作者g56 (^___^)
看板Programming
標題[問題] c語言
時間Wed May 22 11:27:33 2013
請教個問題
宣告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
1F:推 mars90226:就是a[1] 114.42.98.202 05/22 12:21
2F:→ g56:所以輸出會 4,1001 ? 27.247.181.1 05/22 13:32
3F:→ g56:謝謝一樓回答 27.247.181.1 05/22 13:33
4F:→ MOONRAKER:這不是打進去跑一下就知道的事情 118.163.12.174 05/22 13:42
5F:推 coolcomm:去跑一下吧 101.12.158.46 05/22 13:47
6F:→ g56:我沒電腦 (淚奔) 27.247.181.1 05/22 14:06
8F:→ MOONRAKER:沒電腦用ideone就可以了 超方便的咧 118.163.12.174 05/22 16:32
9F:→ g56:感謝樓上兩位:) 39.13.158.33 05/22 16:33
10F:→ ago1414:將指標 指到 (a+1) 位置 取出 a[0+1]值 163.17.55.165 05/23 08:06
11F:推 abcsimps:a是pointer指向a[0] *(a+1)應該是a[1]=4 114.24.82.232 05/24 16:03
12F:→ shemale:後面的a+1不意外應該是1004,如果int是4by 115.43.48.81 05/26 02:30
13F:→ t47320:address 1000+1 應為1001吧? 118.166.211.13 06/12 00:50
14F:→ azureblaze:T* + n = void* + sizeof(T) * n 118.168.90.218 06/12 01:54
15F:→ bibo9901: ^^^^^ 正確來說是 char*118.169.140.128 06/12 08:23
16F:→ bibo9901:void*的加減是未定義行為118.169.140.128 06/12 08:23