[問題] (int *)*p[100] 的意思?

看板C_and_CPP作者 (巧克力泡芙)時間13年前 (2012/07/29 02:47), 編輯推噓8(8013)
留言21則, 12人參與, 最新討論串1/2 (看更多)
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) C (int *)*p[100]; 這個中文是啥意思QoQ 後面*p[100]我知道是 有100個整數型指標分別指向此陣列 那如果前面加上(int *)呢? 然後(int *)*p[100];的大小是幾byte? 一個指標4 byte答案是400bytes嘛? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.43.7.82

07/29 02:54, , 1F
應該是指向100個int*陣列的指標才對
07/29 02:54, 1F

07/29 02:54, , 2F
大小問題,寫個 sizeof 不就可以求出來了嗎?
07/29 02:54, 2F

07/29 02:55, , 3F
我求出來是4 byte QoQ
07/29 02:55, 3F

07/29 03:12, , 4F
這是宣告還是求值 ._. 看起來像宣告但似乎是求值式...
07/29 03:12, 4F

07/29 03:18, , 5F
整個就亂寫的
07/29 03:18, 5F

07/29 04:02, , 6F
http://cdecl.org/提供給Eclair0313網友參考
07/29 04:02, 6F

07/29 09:25, , 7F
根本就亂寫 =_= , 貼出完整程式碼來啦
07/29 09:25, 7F

07/29 10:57, , 8F
從存在於p陣列的index 100的記憶體位置取值,再轉型int*
07/29 10:57, 8F

07/29 10:59, , 9F
int* temp = (int*)*p[100];
07/29 10:59, 9F

07/29 11:48, , 10F
話說為什麼要寫這種搞自己 = =
07/29 11:48, 10F

07/29 11:56, , 11F
會搞自己嗎? 儲存指標 的 陣列啊 我覺得挺好用的 Orz
07/29 11:56, 11F

07/29 11:57, , 12F
他還是陣列 不過是 存指標 撇開存指標這件事 它回傳陣列
07/29 11:57, 12F

07/29 11:58, , 13F
開頭的指標 所以是 4 byte 啊 想成普通的陣列就很好懂
07/29 11:58, 13F

07/29 13:00, , 14F
指標很好用是一回事,原PO開頭對 *p[100] 的認知就錯了
07/29 13:00, 14F

07/29 13:01, , 15F
這個運算式 (int *)*p[100]; 也沒意義,就初學者亂寫而已
07/29 13:01, 15F

07/29 15:03, , 16F
這不是decl, p 指向一塊陣列, 該陣列元素為指標, 但是
07/29 15:03, 16F

07/29 15:04, , 17F
資訊不足以判定陣列元素是什麼形態
07/29 15:04, 17F

07/29 15:08, , 18F
另外也無法得知陣列大小
07/29 15:08, 18F

07/29 15:16, , 19F
非常感謝高手細心回答!!
07/29 15:16, 19F

07/29 15:17, , 20F
板主都跟你說資訊不足了,你也不打算補充嗎...XD
07/29 15:17, 20F

08/02 14:54, , 21F
寫這樣可讀性很低orz
08/02 14:54, 21F
文章代碼(AID): #1G53F2yJ (C_and_CPP)
文章代碼(AID): #1G53F2yJ (C_and_CPP)