strcpy
int main()
{
char p[100];
strcpy(p,"hello world");
printf(p);
}
为什么仍然能够输出hello world
strcpy 不是要遇'\0'才结束拷贝么?
[解决办法]
"hello world"字符串常量:比字符常量相比较至少是多一个字符。字符常量"hell world"其实是占12个字节的内存,最后一个字节就是留给'\0'。
所以,字符常量是有'\0'并且是在最后。
[解决办法]
好吧 路过, 字符串和字符数组 是2码事
字符串是有'\0'结束的
"hello world"是个字符串常量
[解决办法]
在hello world后会自动加上一个‘\0’
[解决办法]
[解决办法]
'\0'肉眼看不出来,只有打印才看的出来。
能看到的不是'\0'
我想lz是不是想问scanf(“%s”,str);
如果输入 hello world 只能得到hello。
要想得到hello world 要用gets