Re: [課業] 97年高考三級資料結構題目編譯無法成功...
看板C_and_CPP (C/C++)作者tsaiminghan (nahgnimiast)時間16年前 (2009/04/04 23:05)推噓0(0推 0噓 0→)留言0則, 0人參與討論串3/4 (看更多)
※ 引述《QQ29 (我愛阿蓉)》之銘言:
: 大家好
: 請教一下
: 我測試一下發現觀念不好 請各位幫忙釐清
: int a[3][2] = {{10, 20}, {15, 25}, {50, 40}};
: int (* intPtr3)[2] = &a[2]; //1. 該怎麼解釋這個intPtr3是什麼東西呢??
指向一個int a[2]的指標
我覺得 a[2]跟&a[2]的值都一樣,只是兩者型態不一樣,所以complier不會過
你改成
int (* intPtr3)[2] = (int(*)[2])a[2];
int (* intPtr3)[2] = (int(*)[2])&a[2];
結果也是一樣。
由於 a是二維的所以
intPtr3 指標取一次 *intPtr3 指向的是 a[2] 這個也是一個位置
**intPtr3 指向的是 a[2][0] 這個指的是內容
我覺得大概是這樣,有錯請指正
: cout<<intPtr3<<endl; //2.為什麼這兩個數值會一樣呢?
: cout<<*intPtr3<<endl; 我認為*應該就會取到 [2][0]阿???
: cout<<a[2]<<endl; //3.這兩個值應該會不一樣吧?
: cout<<&a[2]<<endl; 但我印出來兩個值是一樣的 ...why??
: cout<<**intPtr3<<endl; //4. 為什麼要取兩顆心呢???
: 以上四個問題 有點疑惑
: 煩請各位給予指導
: 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.168.67.96
※ 編輯: tsaiminghan 來自: 218.168.67.96 (04/04 23:07)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 4 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章
-10
29