作者EngRookie (EngRookie)
看板C_and_CPP
标题[问题] 关於阵列指标的疑问
时间Wed Jul 20 17:09:19 2016
大家午安,小弟有一点问题关於阵列以及指标,如下:
int arr1[8];
int *arr2[8];
int(*arr3)[8];
int *(arr4[8]);
printf("sizeof = %d\n", sizeof(arr1)); // an array of int
printf("sizeof = %d\n", sizeof(arr2)); // an array of pointer to int
printf("sizeof = %d\n", sizeof(arr3)); // a pointer to array of int
printf("sizeof = %d\n", sizeof(arr4)); // an array of pointer to int
小弟想问的是 int *(arr4[8]) 这代表的是什麽意思呢?
後面的注释是我对宣告的理解,所以 arr2 = arr4 ?
请大家帮我厘清观念,也希望大家可以一起学习 : )
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.163.91.121
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1469005761.A.AF7.html
1F:→ testPtt: 8个连续空间的int* 07/20 18:53
2F:推 yvb: google: C Operator Precedence 07/20 19:22
4F:→ EngRookie: 所以 arr2 = arr4 这句话成立吗? 07/21 13:28
5F:推 boss0405: arr2 = arr4应该没错 07/21 18:08
6F:→ CoNsTaR: right-left rule 看一下不就知道了吗… 07/21 20:20
7F:→ EngRookie: 我就是看完才打出後面那断宣告解释..只是没把握 T__T 07/22 14:04
8F:→ TobyH4cker: (: 07/23 12:30