c++:字符串什么时候需要手动加上’尀0’呢?

2025-04-16 08:27:31
推荐回答(2个)
回答1:

//正常情况不需要,比如你定义了一个字符串,编译器会默认在串尾加上'\0'
//如:
char* str = "hello"; //实际是 hello\0

//有一种情况需要手动加:在你以字符形式为字符数组赋值的时候
//,如果你后边要把它当串用就得手动加上结尾标记
//如:
char str[] = { 'h', 'e', 'l', 'l', 'o', '\0' };

//上边这个str如果不加'\0',当你把它当做串来访问时它的长度是未知的
//因为这要看内存里'o'后边到哪遇到'\0'

回答2:

自己赋值的时候