面试题: int *p[4]和int (*q)[4]的区别?

    技术2025-10-16  9

    #include<stdio.h> void main() { /* int *p[4] :是一个长度为4的指针数组,该数组的元素为int* 重点:它是一个数组,指针数组 大小:sizeof(p) => 4*4 = 16字节 用法:*(p[0]) */ int *p1, *p2, *p3, *p4; int *p[4]; p[0] = p1; p[1] = p2; p[2] = p3; p[3] = p4; /* int (*q)[4] :是一个指向具有4个整型元素的一维数组的指针,被指向数组的元素为int 重点:它是一个指针,数组指针 大小:sizeof(q) => 4字节 用法:(*q)[0] */ int a[4] = {4, 5, 6, 7}; int (*q)[4] = &a; }
    Processed: 0.011, SQL: 10