C - 函数调用的 sizeof() 如何工作?
C - How does sizeof() of a function call works?
我在 C 中有以下一行:
printf("size of sizeof is %d\n", sizeof(printf("lol!\n")));
我得到的是函数指针的大小吗?
此处,sizeof
计算 printf
的 return 类型。 (这里是int
)
printf() return没有。像“哈哈!”这样的字符有四个字符 + null char(1) 所以它将 return 值 5(一个 int)。然后 sizeof() 将 return sizeof(int) 即 4
我在 C 中有以下一行:
printf("size of sizeof is %d\n", sizeof(printf("lol!\n")));
我得到的是函数指针的大小吗?
此处,sizeof
计算 printf
的 return 类型。 (这里是int
)
printf() return没有。像“哈哈!”这样的字符有四个字符 + null char(1) 所以它将 return 值 5(一个 int)。然后 sizeof() 将 return sizeof(int) 即 4