C语言里的sizeof和数组名
2015-04-13 21:46
288 查看
#include<stdio.h>
void zzz( int * a)
{
printf("%d\n",sizeof(a));
}
int main()
{
int a[3]={0};
zzz(a);
printf("%d\n",sizeof(a));
return 0;
}
这个程序很简单,编译器的值为4,12,也就是说为何把数组名当函数参数去传递的话,用sizeof只能测出一个指针变量的大小
即4,但是在main这个函数里用sizeof去测这个数组的大小却得到12,这是为何?
void zzz( int * a)
{
printf("%d\n",sizeof(a));
}
int main()
{
int a[3]={0};
zzz(a);
printf("%d\n",sizeof(a));
return 0;
}
这个程序很简单,编译器的值为4,12,也就是说为何把数组名当函数参数去传递的话,用sizeof只能测出一个指针变量的大小
即4,但是在main这个函数里用sizeof去测这个数组的大小却得到12,这是为何?
相关文章推荐
- C语言中sizeof以及多维数组的应用
- c语言中数组与sizeof()
- C语言中sizeof计算数组如何实现?
- 【C语言】数组名传递给函数,数组的sizeof变为4的原因
- C语言 数组长度...int length = sizeof(stu) / sizeof(stu[0]);
- 【c语言】strlen与sizeof对数组和指针的求法
- [c语言]sizeof() 居然不是函数?!!strlen()和sizeof()纠缠在一起再碰到不同类型的数组,你还能分辨清吗?
- C语言中,当计算字符数组长度时,用sizeof 和strlen 的原理及两者的区别
- C语言中,当计算字符数组长度时,用sizeof 和strlen 的原理及两者的区别
- C语言学习入门 (三) sizeof 函数、内存地址、数组
- C语言中sizeof对数组和对指针操作的不同,以及sizeof中表达式赋值问题
- 别人不会给你说的---C语言中数组名和指针的区别 及 sizeof用法
- C语言中数组名和指针的区别 及 sizeof用法
- 7_25 C语言 sizeof计算数组大小以及static讲解和静态库动态库
- 【c语言】sizeof里边放数组名,传首元素地址
- c语言:sizeof的使用,其不是函数,是一个操作符关键字,定义一个数组arr,输出arr和&arr的区别
- c语言数组遇上sizeof和strlen
- C语言-在一个数组中找到一个数之sizeof的用法。
- c语言之数组 sizeof strlen
- c语言中的数组sizeof和strlen