c - 了解 C 中的 sizeof 运算符

标签 c sizeof

<分区>

char c = 'A';
printf("%d\n",sizeof(c));// output = 1
printf("%d\n",sizeof('A')); // output = 4

为什么 sizeof 运算符对同一个字符给出不同的输出?请帮忙

最佳答案

cchar类型的变量;它的大小是 1 个字节。

'A' 是一个 int 字面量 - 不要问我标准为什么这么说。它的大小在您的平台上是 4 个字节(与 sizeof(1) 相同)。

关于c - 了解 C 中的 sizeof 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34428263/

相关文章:

c - 在C中确定变量栈还是堆?

c - 如何在C程序中打开FILE?我们必须在哪里创建文件?

c - 为什么要在定义函数的过程中声明变量?

c - sizeof 运算符返回指针而不是数组的大小

char 指针作为函数参数

c - 在 for 循环 C 中返回

c++ - 用于测试 C 和 C++ 分配器的基准?

c - 为什么三次运算sizeof的结果是4?

c - 将数组传递给函数后如何知道数组的大小

c - C 中小于 8 位的位字段并集的打包结构的大小