数组作为函数的形参时,函数访问这个数组实际上是以类似指针的形式访问的。使用sizeof时,得到的是指针的大小。
#include <stdlib.h> #include <stdio.h> void example(char str[]) { printf("%ld\n", sizeof(str)); } int main() { char helloStr[] = "Hello, you! Who are you?"; example(helloStr); printf("%ld\n", sizeof(helloStr)); return 1; }
输出结果为:
8 25