作者vm6jp6rmp4 (Jun)
看板C_and_CPP
標題[問題] 關於sizeof
時間Wed Nov 17 22:49:47 2010
小弟想問個關於sizeof的問題
int main()
{
int x[3]={1,2,3};
cout<<sizeof(x);
system("pause");
}
sizeof(*x)代表x[3]中第一個位址的內容,也就是1的大小,sizeof(x)代表
x裡面有三塊int記憶體合計12,那sizeof(x+1)代表什麼?跟sizeof(*(x+1))是一樣的意思
代表x[1]中2的大小嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 115.43.154.202
→ james732:我猜是pointer size 11/17 22:52
推 loveflames:x+1的x會被解釋成&x[0],所以+1等於&x[1] 11/17 22:55
→ loveme00835:sizeof(x) 是陣列所有元素加總的大小, 一旦加上運算, 11/17 23:06
→ loveme00835:都是拿 &[0] 去算, 所以型態是 int* 11/17 23:06