Re: 請教 C++陣列

看板Programming作者 (小靖)時間18年前 (2007/07/21 11:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
※ 引述《leicheong (睡魔)》之銘言: : ※ 引述《jiannrong@kkcity.com.tw ( )》之銘言: : : #include<iostream> : : using namespace std; : : int main( ) : : { : : char a[]={'1','2','3','4','\0'}; : : cout<<a<<endl; : : cout<<a[0]<<endl; : : cout<<&(a[0])<<endl;//這一行為何顯示1234呢? : &[a[0]]是a 陣列的開始位置大約等於 *a, 因此會顯示至第一個遇到的'\0'字元. : : cout<<&a<<endl; : : cout<<&a+1<<endl; : : cout<<a+1<<endl;//為什麼不是2 而是234呢? 其實,a+1此時必將a自動轉型成char*之型態 成為指標之後,便可適用加減運算。 a+1為字串指標型態,因此就cout而言 會以字串的型式將*a+1以後的字串輸出, 因此為234。 另外,有關array和pointer的區別 我找到了一篇很棒的文章供各位分享 http://www.cnblogs.com/oomusou/archive/2007/02/08/644197.html -- 對了,有沒有人有那張 幹一輩子革命,讀一輩子C++的書的那張圖啊 我要大張一點的....有的話可以寄給我嗎^^ 謝謝 - 檢測小靖 : : system("pause"); : : return 0; : : } : : 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.8.55.215
文章代碼(AID): #16eNSPcB (Programming)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 4 篇):
文章代碼(AID): #16eNSPcB (Programming)