标签: c++ arrays pointers char null-terminated
如果我创建动态字符数组:
char * c = new char[5];
我不用字符串填充它,空字符\0是否在这个数组的末尾?
\0
答案 0 :(得分:6)
不,char指针只是指针。他们甚至不必指向阵列。
在您的特定情况下,newed数组的元素保持未初始化状态。如果您希望将它们初始化为零,则可以执行以下操作:
char * c = new char[5]();
这会将所有元素设置为\0。您可以考虑c指向以null结尾的字符串。
c