[问题] 关于阵列指标的疑问

楼主: EngRookie (EngRookie)   2016-07-20 17:09:19
大家午安,小弟有一点问题关于阵列以及指标,如下:
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 ?
请大家帮我厘清观念,也希望大家可以一起学习 : )
谢谢
作者: testPtt (测试)   2016-07-20 18:53:00
8个连续空间的int*
作者: yvb   2016-07-20 19:22:00
google: C Operator Precedence
作者: CaptainH (Cannon)   2016-07-20 19:49:00
楼主: EngRookie (EngRookie)   2016-07-21 13:28:00
所以 arr2 = arr4 这句话成立吗?
作者: boss0405 (boss)   2016-07-21 18:08:00
arr2 = arr4应该没错
作者: CoNsTaR ((const *))   2016-07-21 20:20:00
right-left rule 看一下不就知道了吗…
楼主: EngRookie (EngRookie)   2016-07-22 14:04:00
我就是看完才打出后面那断宣告解释..只是没把握 T__T
作者: TobyH4cker (Toby (我要当好人))   2016-07-23 12:30:00
(:

Links booklink

Contact Us: admin [ a t ] ucptt.com