gpt4 book ai didi

c++ - 为什么在输出字符数组到控制台时得到垃圾值?

转载 作者:太空宇宙 更新时间:2023-11-03 10:46:30 25 4
gpt4 key购买 nike

当我输出我的数组时,我总是在最后得到一个像这样的垃圾值 'Íýýýý««««««««îþþþ'。我做错了什么?

void func()
{
const int size = 100;
char * buffer = new char[size];
for(int i=0; i<size; i++)
buffer[i] = ' ';

cout<<buffer;
}

但是,如果我使用 for 循环输出缓冲区,则没有垃圾值。

最佳答案

因为你没有空终止你的缓冲区,std::cout.operator<<(char*)将尝试找到 \0作为它的终止符。

正如评论中所指出的,请随意附加 \0到缓冲区的末尾:)。

关于c++ - 为什么在输出字符数组到控制台时得到垃圾值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20268769/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com