我是 c 编程的新手,我正在尝试理解 sizeof
函数。
请帮助我理解这个程序是如何工作的:
#include<stdio.h>
main( )
{
printf ( "\n%d %d %d", sizeof ( '3'), sizeof ( "3" ), sizeof ( 3 ) ) ;
}
我得到的输出为 4 2 4
。
但是,我无法理解获得此输出的原因。 请解释一下。
最佳答案
sizeof ( '3')
,它是 character constant 的大小,它是int
所以你得到的值是4
在你的机器上。sizeof ( "3")
,它是字符串的大小,即2
。
字符串"3"
由2个字符组成('3'+'\0')
="3"
。我们知道sizeof(char)
是 1。
<sizeof ( 3 )
,它是int
的大小,在您的机器上是4
。
关于c - 请解释 sizeof() 的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26416703/