【发布时间】:2022-01-07 06:12:52
【问题描述】:
整数为 4 字节
double 是 8 个字节
空函数的大小是多少?
void test(){} //-> size????
void test1(){ int a, int b, double c } //-> size????
void test2(){ test() } -> size??????
当我运行程序时,结果是一样的
void test(){}
void test1() {int a}
void main()
{
cout<<sizeof(&test) <<endl;
cout<<sizeof(&test1) <<endl;
}
请解决我的问题
【问题讨论】:
-
您可能想发布该程序的输出,而不是只说结果“相同”。
-
函数名只不过是一个指针。
-
检查这个问题及其答案:stackoverflow.com/questions/4156585/…
-
"integer is 4 byte double is 8 byte" -- 这些大小在所有平台上都不能保证。你是怎么想出这些尺寸的? (他们是否涉及使用
&,就像您尝试获取函数的大小一样?) -
你对函数的大小有什么期望。生成指令的数量?请说明。