看板 C_and_CPP 關於我們 聯絡資訊
小弟想問個關於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