【发布时间】:2018-09-20 01:56:14
【问题描述】:
我正在处理sizeof()
当我以 char 数据类型输入参数时
J=sizeof(char);
输出为 1。
但是当我输入这样的论点时
J=sizeof('A');
我得到的输出是 4。
由于它的参数是 char 数据类型,它应该返回 1 作为输出,为什么它返回 4/2(取决于 32 位/64 位设备)。
【问题讨论】:
-
sizeof 'A'在 C++ 中总是返回 1。请不要在您的问题中标记随机语言。 -
您将此问题标记为 C 和 C++,但您实际使用的是哪个?这是一个可以发挥作用的案例!
-
c或c++?它们是具有不同规则的不同语言,很可能您一次只使用其中一种。 -
只需检查 C 标准,或者,我希望,任何包含文字描述的半体面的教程,你就会明白。
-
@Quentin 感谢您的建议,这个地方的新人下次会照顾好:)