C - 函数调用的 sizeof() 如何工作?

问题描述

我在 C 中有以下一行:

printf("size of sizeof is %d\n",sizeof(printf("lol!\n")));

在这里得到了函数指针的大小吗?

解决方法

此处,sizeof 计算 printf 的返回类型。 (这里是 int

,

printf() 返回 no。像“lol!”这样的字符有四个字符 + null char(1) 所以它会返回值 5(一个 int)。然后 sizeof() 将返回 sizeof(int) 即 4