看板 Programming 關於我們 聯絡資訊
請教個問題 宣告int a[3]={2,4,6} 若&a[0]的值是1000且整數之大小為4位元組 請問printf("%d%d",*(a+1),a+1)的輸出為何? 我看不懂 *(a+1)是什麼 = = 謝謝看完:) -- Sent from my Android -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 27.243.178.141
mars90226:就是a[1] 114.42.98.202 05/22 12:21
g56:所以輸出會 4,1001 ? 27.247.181.1 05/22 13:32
g56:謝謝一樓回答 27.247.181.1 05/22 13:33
MOONRAKER:這不是打進去跑一下就知道的事情 118.163.12.174 05/22 13:42
coolcomm:去跑一下吧 101.12.158.46 05/22 13:47
g56:我沒電腦 (淚奔) 27.247.181.1 05/22 14:06
coolcomm:http://ideone.com/6y2IJc 101.12.158.46 05/22 14:24
MOONRAKER:沒電腦用ideone就可以了 超方便的咧 118.163.12.174 05/22 16:32
g56:感謝樓上兩位:) 39.13.158.33 05/22 16:33
ago1414:將指標 指到 (a+1) 位置 取出 a[0+1]值 163.17.55.165 05/23 08:06
abcsimps:a是pointer指向a[0] *(a+1)應該是a[1]=4 114.24.82.232 05/24 16:03
shemale:後面的a+1不意外應該是1004,如果int是4by 115.43.48.81 05/26 02:30
t47320:address 1000+1 應為1001吧? 118.166.211.13 06/12 00:50
azureblaze:T* + n = void* + sizeof(T) * n 118.168.90.218 06/12 01:54
bibo9901: ^^^^^ 正確來說是 char*118.169.140.128 06/12 08:23
bibo9901:void*的加減是未定義行為118.169.140.128 06/12 08:23