http://ideone.com/UhNQlR 先附上原始程式碼
這是某本書上的範例但是照打上去於DEv編譯會出現錯誤
問題1 : 對於ptr = temp 的這行意義不是很了解
看字面上似乎想要讓ptr指標指向temp指標存取的值(指向某字串的位址)
但temp並未初始,所以這個步驟對我來說有點詭異
問題2 : 我假設問題1的步驟可能是要這樣寫
ptr = &temp
那麼我想要讓三個字串的起始位址連續存入三個記憶體位址中
於是我也寫了跟範例一樣的語法
*(ptr+0) = string1;
*(ptr+1) = string2;
*(ptr+2) = string3;
而我想要確認這三個位址是否真的連續接著
於是自行加上輸出
for(n=0 ; n<3 ; n++)
printf("第%d個字串的位址為%p\n",n+1,*(ptr+n));
不過1跟2的位址是連續,但第三個位址直接跳去不知道哪個地方
很明顯不連續
以至於我在加上輸出列印時就產生錯誤
for(n=0 ; n<3 ; n++)
printf("第%d個字串的字串為%s\n",n+1,*(ptr+n));
想要知道問題的點在哪邊 Orz ..毫無頭緒
問題3 : 關於置底常見錯誤的12
別想對二維陣列使用pointer to pointer
想請問各位前輩時否有現成的案例可供小弟參考
最近也是有類似的想法正在練習不過好像沒出現問題
怕我正在走上這條看似正確的誤途上
初次在板上請教,煩請各位不吝指教