作者walm20 (New CygnusX)
看板C_and_CPP
標題Re: [問題] 指標陣例
時間Mon Aug 17 03:54:24 2009
※ 引述《jang2891 (~隱~)》之銘言:
: 在看例題的時侯有一段大約如下
: EX:
: int a[5]={1,2,3,4,5};
: int *ptr=a;
: for(int i=0;i<5;i++)
: cout<<"a["<<i<<"]="<<*(ptr++)<<endl;
: 這樣可以利用指標的方式來印出陣例的每個值
: 那如果我要印"位址"出來要怎麼做啊…
: 我有試過用&(ptr++)和&(ptr+i),可是編釋的結果是錯的
ptr++ 不是l-value 不能取&
: 請問要用ptr來印出每個值的位址要怎麼做?
: 我之前有用過ptr+i來印
可是有個問題是a[0]的位置不是應該和ptr+i(i=0)的位置一樣嗎
^^^^^^^^^^ ^^^^^^^^^^^^^^^^
註1 註2
註1 : a[0]的位置 = &a[0]
註2 : ptr+i(i=0)的位置 = &(ptr+i)
: 可是出來的位址是不同…먊: 是我觀念錯嗎(位址一樣),還是位址本來就不同
--
我的露天拍賣:
http://tinyurl.com/6z4rw7
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.169.1.229
推 VictorTom:ptr+i也不是l-value不能取址 (&) 吧?_? 08/17 09:58
推 finding2005:lvalue是指 = 等號的左邊, ptr+i 沒有等號 08/17 12:36
→ finding2005:沒看清楚= = ... 一樓才是對的! 08/17 12:38
→ walm20:只是 描述他的中文而已 08/17 13:11
→ walm20:請問 c++ 可以這樣寫 a[0]的位置??? 08/17 13:12
→ walm20:要不要也說說看a[0]的位置 = &a[0] 等於是錯誤的 08/17 13:13
→ walm20:難道要看成assign? 08/17 13:16
推 VictorTom:小弟只是補足您回文的第一句話, 後面有註那邊其實我看不 08/17 13:33
→ VictorTom:懂所以根本沒仔細注意....Orz 08/17 13:34