推 zzss2003: B的型別應該是int (*)[2][3]吧? 04/24 17:29
→ zzss2003: 打錯了,是int [2][3] 04/24 17:30
→ descent: 和我舉例的 A[2] 是類似的意思 04/24 17:47
推 LPH66: B + 0 應該是 &B[0], 只是在這東西也是陣列之下位址會相同 04/24 18:18
推 KanzakiHAria: B的型別就是 int[2][3] 而不是 int*[3] 04/24 19:37
推 KanzakiHAria: enonrick的文章已經教過簡單的判別法 04/24 19:39
→ KanzakiHAria: sizeof(B) sizeof(B[0]) sizeof(B[0][0]) 04/24 19:40
→ KanzakiHAria: 看到連續這幾篇文章 C現在來看真的是設計不良 04/24 19:44
噓 KanzakiHAria: 連型別都搞錯不要亂發文害人rrrrrrrrrrrr 04/24 19:49
推 CoNsTaR: 不是有 right-left rule 嗎? 04/25 00:14
→ CoNsTaR: 為什麼每次都要講得好像很複雜一樣 04/25 00:14
→ hunandy14: 隱式轉換之後才變成變成指標,陣列的型態是"陣列" 04/25 01:32
→ hunandy14: 兩者之間比較容易是別的地方是指針不帶長度資訊 04/25 01:35
→ hunandy14: 標 04/25 01:35
→ hunandy14: 識別 ((痾怎麼還有 04/25 01:36
噓 loveflames: 陣列就是陣列,不要用指標來誤導人謝謝 04/25 09:48
→ loveflames: B就是int [2][3],沒有別的了 04/25 09:49
做了一些修改。
※ 編輯: descent (61.218.53.138), 04/25/2018 11:09:36
推 yvb: 我想原PO誤把語意當型別, 也就是 K&R C語言 5.7 多維陣列 04/25 13:11
→ yvb: 後半節, 或是 C99 C11 6.5.2.1 Array subscripting 第3點 04/25 13:11
→ yvb: (該節Semantics第二段落) 的描述. 04/25 13:12
→ yvb: 對初學者來說, 也許講清楚語意更有助理解. 04/25 13:16
→ freef1y3: B應該是int [2][3]沒錯, 不過有一些吊詭的點 04/26 15:44
→ freef1y3: 1. 你不能寫 int C[2][3]; C = B; 04/26 15:44
→ freef1y3: 2. void f(int B[2][3]) {...} 那在f裡B會變成int(*)[3] 04/26 15:45