阿里面试题:在64位系统下,分别定义如下两个变量:char *p[10]; char(*p1)[10];请问,sizeof(p)和sizeof (p1)分别值为____。

(阿里面试题)题目:在64位系统下,分别定义如下两个变量:char *p[10]; char(*p1)[10];请问,sizeof(p)和sizeof (p1)分别值为____。


解析:考查的知识点是指针数组与数组指针。

首先要明确指针数组与数组指针的定义和区别:

    (1)指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针int* a[10]。

    (2)数组指针:a pointer to an array,即指向数组的指针。如int (*a)[10]。

明确了两者的定义上题便很容易给出答案,sizeof(p)计算的是10个char型指针的大小,sizeof(p1)计算的是一个char型指针p1的大小,所以答案为80 , 8。


注:64位系统下一个指针占8字节。

你可能感兴趣的:(面试笔试题目)