sizeof演算子 C言語

p=n * sizeof * q

このコード、掛け算は何回しているかわかりますか?答えは1回。

コードの意味は、ポインタqが指す先のサイズと変数nの掛け算。

sizeof演算子は、その被演算数(上のコードだと*q)の型のオブジェクトを格納するのに必要なバイト数を求めるために使われる。文章だと小難しいですね。。

例えば、sizeofにcharを当てはめると結果は1。コードで書くと下のようになります。

sizeof( char )

型名をsizeofに当てはめるときはカッコが必要です。

では、次のコードの意味はわかります?

p = sizeof (int) * q

ポインタqが指している先をintにキャストして、そのサイズを求めているのでしょか?

ぜひ、テストコード書いて試してくださいね♪