- 拌三丝
-
字符串abc defgh,一共占10个字节。
首先,C语言中每一个字符占1个字节。
其次, 是转义字符,它占一个字节,而不是和0分别占一个字节。
再次,C风格的字符串,为了方便操作,默认结尾增加一个 ,以表示字符串结束,这也算一个。
最后,能看到a、b、c、 、d、e、f、g、h一共9个字节,加上看不到编译器添加的末尾的 字符,共10个字节。
- 陶小凡
-
#include
void
main()
{
printf("%d",sizeof("abc defgh"));
}
在VC6.0中用测字节函数sizeof即可。例如,对abc defgh这个字符串,数起来共有9个字符,但实际上占用10个字节,这是因为系统自动在字符串最后加一个字符串结束标志 ,而它也是要占用一个字节的。sizeof还可以用来测各种数据类型内存分配的字节数。例如,当你执行printf("%d",sizeof(int)),系统会输出4。(我用的编译系统是VC的,至于TC中这个函数是否也可以用这个函数就不知道了)
33abcdef中,33代表一个ASCII码值为33的字符,在内存中占用一个字节。
\033abceL在内存中占用10个字节,其中的\在C语言中相当于,在内存中占用一个字节。类似的有%%代表%。例如,在C语言中你要输出33%,可以这样写
#include
void
main()
{
printf("33%%");
}
同样要输出,可以这样写,
#include
void
main()
{
printf("\");
}