表达式分配了多少空间
int *a[10];
如果大小为 int
是 4
和大小int pointer
是 2
.
选项有 2、4、20、40
我不太擅长指点,请帮助我。
最佳答案
在声明 int *a[10]
中,a
是指向 10 大小的 int 的指针数组,因此 size = sizeof (int*) * 10
。
您可以应用 sizeof 运算符来打印其大小:
printf("sizeof = %zu", sizeof(a));
如果假设在某些系统中,指向 int 的指针 sizeof 是 2(正如您所说),那么 size 将是 20 字节。
关于c - 为以下代码分配了多少空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19637059/