【发布时间】:2013-09-24 08:28:31
【问题描述】:
我有这个测试程序,它给出以下输出。
#include<iostream>
#include<cstdio>
void fun(char arr[])
{
printf(".size of char : %d\n.", sizeof(arr[0]));
printf(".size of char array: %d\n.", sizeof(arr));
}
main()
{
char arr[10]={'a','b','c','d','e'};
fun(arr);
printf("size of char array: %d\n", sizeof(arr));
}
输出
. 字符大小:1 ..char 数组的大小:8 .size 字符数组:10
现在我明白了,在第一个语句中它的数组成员的大小和在第三个语句中是整个数组的大小但是第二个 printf 中的 8 在这里说什么?
【问题讨论】: