C言語なら俺に聞け(入門篇) Part 45
■ このスレッドは過去ログ倉庫に格納されています
0056デフォルトの名無しさん
2009/02/20(金) 15:23:54typedef int (*array_5_2)[5][2]
array_5_2 p;
p=(array_5_2) &u[0];
でコンパイラが解ってくれたら儲け物ぐらいに思っておこう。
実際に動かして問題が無いかチェックする作業は絶対に
避けられない。(出来れば出力アセンブルコードを見て
検証したいもの)
コンパイル出来ても期待した通り動いてくれる保証は無いから。
こういう場合は、自分で二重添字を一次元化する処理をして
配列を扱うのがキホン
#define U(i,j) u[ 5*((j)-1)+(i) ]
てな感じで、マクロにしてしまおう。
型変換に関してはCは実は余り得意ではなく、すんなり通すがやること
滅茶苦茶なケースが多い。
typedef やマクロに進むまで配列やポインタはひとまずフリーズ
したらどーだ?
■ このスレッドは過去ログ倉庫に格納されています