C言語なら俺に聞け<35>
■ このスレッドは過去ログ倉庫に格納されています
0158151
NGNGいや、関数の大元は別会社から指定されてて・・つまりライブラリね。
void func( long * ); 、long型のポインタで与えてくださいって言われています。
で、2番しか渡せないはずなのだが先輩曰く
「どちらもアドレスの先頭を渡すことになるだろ。
data という変数の [0] 個目、 & でアドレス渡しだ。
だから、&data[0] は data[0][0] のアドレスを渡す、という意味になるから
&data[0] も &data[0][0] も同じ意味だ。確かにお前の &data[0][0] のほうが見る者にとっては
親切な書式になるが、結果は同じだから特に気にすることはない。
あと、C言語では 配列数を省略してかくとポインタになるのは知っているだろ?
だから、data[0][0] を data だけで書いても、コンパイル結果はまったく同じになる。
どうでもいいような知識かもしれないけど、知っておいて損はないぞ。」
という話なんですね。1の場合、確かに意味的には通りそうなんだけど、C言語の基本から考えると
違うような。1の場合、いったいどういった情報が渡っているのでしょうか?
>>154
今のプロジェクト、その先輩と同期3名だけなんです・・・
>>155
思い切り仕事です・・・
■ このスレッドは過去ログ倉庫に格納されています