【发布时间】:2020-04-21 13:27:24
【问题描述】:
假设这段代码:
#include <stdio.h>
int a(){
int b = 5;
return b;
}
int main ()
{
printf("%d\n", sizeof(a));
return 0;
}
上面打印1。这是什么意思?
我知道当sizeof 用于结构时,它会获取其中数据类型的总大小(以字节为单位)。但是用在函数上是什么意思呢?
编辑:
如果我使用sizeof(a())) 而不是sizeof(a)) 会怎样。现在它正在打印4,这是返回类型的大小,这是正确的方法吗?怎么不是未定义的?
【问题讨论】:
标签: c