Re: [問題] 請問C語言中指標宣告與字串

看板Programming作者時間16年前 (2008/08/22 19:01), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《CCChieh.bbs@ptt.cc (敲口愛)》之銘言: > int *a=123; > char *a='c'; > 編譯時發生錯誤,可以理解成系統並沒有配置記憶體空間給pointer > 故pointer指向之記憶體位置並無法存放變數,而發生address access violation 非也 int *a=123; 錯誤,是因為不准這樣直接給值 char *a='c'; 等於 char *a=92; ,錯的原因也是一樣 access violation是run-time error,不會在compile-time發生。 > 又見 > char *a="qwe12312"; > 是個常見可行的寫法 > 但試問各位板友,編譯器如何去解釋這段指令 1)在常數區劃一段長度9的記憶體 2)放進'q','w','e','1','2','3','1','2','\0' 3)把這塊記憶體的開頭位址指定給a   -- 蒙帝派松正體中文計畫 (4/23) - 如何隱身 - SPAM - 英國殺人笑話 http://www.wretch.cc/blog/journeyman&article_id=14377810 ▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂ 法外科學暨工程顧問公司 http://www.wretch.cc/blog/journeyman/ ▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆ -- ┌─────KKCITY─────┐ KKBOX歌名歌手歌詞專輯搜尋 bbs.kkcity.com.tw http://www.kkbox.com.tw └──From:59.115.203.20 ──┘ 超過100家唱片公司合法授權 音樂盡情下載 --

08/22 19:13, , 1F
感謝
08/22 19:13, 1F
文章代碼(AID): #18hfnl00 (Programming)
文章代碼(AID): #18hfnl00 (Programming)