sizeof的故事

来源:互联网 发布:python 神经网络 金融 编辑:程序博客网 时间:2024/04/29 22:50

 时隔两年,接着学C,用的是 霍顿 的 C语言入门经典,从第九章接着往下学。 做9.2本来是个很简单的题目,无意牵扯到一个sizeof的问题。 先贴代码:

 void array_op(char *buf,char size)

{

char i;

printf("In the Function./n%d/n",sizeof(buf)/sizeof(char));

}

如果我告诉你,在这里我是想借此获取数组的长度,你会做何感想呢?

 

这里,我一个朋友告诉我,这么搞是死路一条(但是,如果我在主函数里(因为那时候已经给这个地址分配好了内存)写是可以的)。 我们的结论是传递以后只是传递了一个地址,他还说什么,sizeof是一个 “编译时”函数。