風で飛んでいくチラ裏

気ままに雑記メモ書き殴り。古い記事は別blogからの引っ越しなのでレイアウトがアレです。

ポインタワンポインタ

とっさに聞かれて答えられなくて枕を涙で濡らす思いをしたので。

	char (*a)[10];
	char *b[10];

	printf("sizeof((*a)[10]):%d, sizeof(*b[10]):%d\r\n", sizeof(a), sizeof(b));

それぞれいくつ?

■こたえ

char (*a)[10];は、
char型の要素を10個持つ配列へのポインタなので、sizeofは4 (※32bit)

char *b[10];は、
charポインタの配列(要素数10)なので、sizeofは40 (※32bit)

でした。
(function(document){ var pres = document.getElementsByTagName("pre") for(var i=pres.length; i--; ){  var el = makeOl(pres[i]) pres[i].appendChild(el) } function makeOl(pre){ var ol = document.createElement("ol") , li = document.createElement("li") , df = document.createDocumentFragment() , br = pre.innerHTML.match(/\n/g) ol.className = "preLine" ol.setAttribute("role", "presentation") for(var i=br.length; i--; ){ var li2 = li.cloneNode(true) df.appendChild(li2) } ol.appendChild(df) return ol } })(document)