C言語なら俺に聞け(入門篇) Part 39at TECH
C言語なら俺に聞け(入門篇) Part 39 - 暇つぶし2ch43:12
08/11/15 18:34:50
>>39
ですよね……
名古屋大出てるのにOrz

仮引数.
なるほど.次からちゃんと分けて書くようにするよ.
でもなんでそう書く方がよろしいんだ??

さっき,GNU libcを落としてきて,ソース漁ってみた.
printf.cのソースで,
int
__printf (const char *format, ...)
{
va_list arg;
int done;

va_start (arg, format);
done = vfprintf (stdout, format, arg);
va_end (arg);

return done;
}
ってなってたよ.次からいちいちstaticにするのはやめておくことにする.

44:デフォルトの名無しさん
08/11/15 18:42:23
printfで%lfで表示すると同じなのに、比較すると(if分で!=de)異なると
なってしまいます。片方は計算で得た5.0000、もう片方は5をdouble型に
入れたものです。
この二つをどうにかして同じ値として扱いたいんですが何かいい方法はないでしょうか?

45:デフォルトの名無しさん
08/11/15 18:44:20
日本語がおかしくてすみません
簡単に言うとif文の条件として二つの変数を比較するときだけ
小数点5桁とか4桁だけで比較したいんですがどうしたらいいでしょうか?

46:デフォルトの名無しさん
08/11/15 18:45:22
>>44
浮動小数点では単純に==で比較すると誤差で涙目になる。
適当に許容する誤差を決めて
#define EPS 1e-5
if(fabs(a-b) < EPS){//aとbが等しいなら

}
みたいにやるのを薦める

47:33
08/11/15 18:50:37
>>37
それは失礼した
しかし痛い教授にあたったものだな、ご愁傷様

試験のときも教授と同じ間違え方をしないと減点されかねないから気をつけてな

48:デフォルトの名無しさん
08/11/15 18:50:50
ありがとうござます!!

49:デフォルトの名無しさん
08/11/15 19:00:53
>>35
一つ言っておこう
授業で習うことなんて8割方嘘だ

初心者向けにかなり誤魔化しが入っとるけん、
全部鵜呑みにせんと、概要だけふーんと聞いておけばいいよ

50:デフォルトの名無しさん
08/11/15 19:10:07
なぜ伊予弁

51:34
08/11/15 19:15:30
すみませんもうひとつ質問なのですが、

たとえばゲームとかを作る時、キャラクターを動かす部分のプログラムは、
「今xに表示しているキャラ画像を、○○秒後にx+10に表示する」
みたいになると思うのですが、
そもそもこの部分の処理に○○秒以上かかっちゃっう場合はどうするんですか?



52:デフォルトの名無しさん
08/11/15 19:19:07
>>51
動きがガクガクになる。

53:デフォルトの名無しさん
08/11/15 19:19:20
教授なんて名大を出ててもそんなものか。。。
かったるくて日進月歩に合わせられないんだろうな。
法科、会計、情報系は教授もリアルタイムに日進月歩しないと駄目じゃね?
古いままだと実態に合わなく使い物にならなくなるから。

54:デフォルトの名無しさん
08/11/15 19:25:07
>>51
タイマー割り込みの手法を使って、差分を計算してキャラを動かす。
キャラが増えて負荷が高くなったら、一部を間引いて処理する工夫を入れるか
タイマー間隔を延ばして処理する工夫を入れる。

55:12
08/11/15 19:25:23
>>47
俺は授業よりも,Cの本の方を重点的にやってるから,
今回の返り値の謎に気がついたからよかったけど,他の連中に返り値がどうのとかいうと,
「返り血」と思われてしまうよww
困ったもんだ.准教授といえども,間違うってことか.
そう言えば,scanfのフォーマットで[]とか*とかもしらなかったもんな.

そんなもんなのかな?

>>49
准教授の授業3割,本4割,libcとかのGNUのソース2割,どっかのサイト1割くらいで参考にしてるから,
それは大丈夫だと思いたい.

質問の結論は返り値は値渡し.
みんなありがと.ずっと変なソース書き続けるとこだったよ.
聞いてみてよかった.

56:デフォルトの名無しさん
08/11/15 19:34:09
>>37
誰か指摘してたが、関数内で不用意に性的変数を
参照するのは避けるべき
なぜなら再入可能でなくなるから

つまりマルチスレッドで同時にその関数を使用すると不具合が起こる

要はマルチスレッドプログラミングも
したことない助教授は明らかに素人なので
気をつけろってことさ

57:デフォルトの名無しさん
08/11/15 19:36:24
人員不足で担当させられてるだけの門外漢だったりして

58:デフォルトの名無しさん
08/11/15 19:38:06
なんという痛み分けw

59:34
08/11/15 19:40:46
>>52
なるほど・・・
>>54
なんかよくわかりませんがいろいろ解決法があるのですね。
調べてみます。


60:デフォルトの名無しさん
08/11/15 19:40:48
>>55
つかさーアセンブラやってんなら返り血を
渡すコードがどうなってるか見てみるといいぜ
返す型でも変わるし

61:デフォルトの名無しさん
08/11/15 19:51:26
しかしこの返り値クンは、なんやかんやと言い訳ばかりでむかつくなw
後から伸びないタイプだわw

62:デフォルトの名無しさん
08/11/15 20:02:13
管理職タイプ

63:デフォルトの名無しさん
08/11/15 20:09:43
>>61
それはどうでしょうか。

>>55
こちらで返り血を浴びながら修練するのも一興
スレリンク(tech板)


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch