C言語なら俺に聞け(入門篇) Part 27at TECHC言語なら俺に聞け(入門篇) Part 27 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト400:デフォルトの名無しさん 08/05/06 14:17:47 >>.397 そこの二つ目のの「seito2」は構造体の配列名。配列名は大抵の場合すぐポインタに成り下がるので、 ポインタを引数としてとるseidesp2()にそのまま渡すことができる。 >>393 の場合histは構造体の単体だから、two(&hist) として呼び出さなければならない。 >グローバル変数を使わずに、n個上の階層から任意の変数を↓に投げて、returnすることなく >処理された任意の変数をn個、n-1個上の階層で使用したいのですが 言ってる意味がよくわからないが、1つの構造体のデータを再帰的に処理したいのなら構造体のポインタを渡す。 401:デフォルトの名無しさん 08/05/06 14:21:07 コンパイラのエラーメッセージをちゃんと読め。 プロトタイプ宣言と定義が噛み合っていないぞ。 void two(struct histgram hist); void two(struct histgram *hist)... 402:デフォルトの名無しさん 08/05/06 14:23:09 >>399 x = ZETTAI(-9 - 50) + 5; ↑は↓のように展開されるから。 x = (-9 - 50 < 0) ? -(-9 - 50) : -9 - 50 + 5; これはもちろん x = (-59 < 0) ? 59 : -54; と解釈されて、xには59が代入される。 マクロZETTAIの正しい宣言は下のようになる。 #define ZETTAI(x) ((x < 0) ? -(x) : x) もちろん自作などせずにライブラリ関数を使うことが望ましい。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch