可能重复:如何在 C 编程语言中
找到数组的大小(指向数组的指针)大小?
#include<stdio.h>
void doit(char x[10]){
printf("%d\n", sizeof(x));
}
void main(void){
char x[10];
printf("%d\n", sizeof(x));
doit(x);
}
** 我不知道为什么我的问题第一次被删除。** 这里的两个输出是不同的。显然第一个知道 x 是一个数组,第二个只知道它是一个 ptr。我的问题是为什么编译器知道在第一种情况下它是一个数组而不是一个ptr?