你能帮我解释一下为什么这段代码没有按预期打印'*'字符的字符数组?
int n = 10;
char *cs = (char*) calloc(n + 1, sizeof(char));
for (int i = 0; i < n; i++) {
cs[i] = '*';
}
cout << cs << endl;
搜索了很多,但在任何地方都找不到相同的问题..
谢谢!
答案 0 :(得分:1)
我在录音室里写了相同的代码,对我来说它的工作正常。将*
作为输出。
int main()
{
int n=10;
char *cs = (char*) calloc(n+1, sizeof(char));
for (int i=0; i<n; i++) {
cs[i] = '*';
}
cout << cs << endl;
return 0;
}