如果我创建动态字符数组:
char * c = new char[5];
而且我不使用字符串填充它,空字符 \0
会在这个数组的末尾吗?
最佳答案
不,字符指针只是指针。它们甚至不必指向数组。
在您的特定情况下,新数组的元素未初始化。如果您希望它们被零初始化,您可以这样做:
char * c = new char[5]();
这会将所有元素设置为 \0
。您可以考虑将 c
指向一个以 null 结尾的字符串。
关于c++ - 新动态字符数组末尾的空字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29054553/