gpt4 book ai didi

c++ - char 数组末尾的奇怪字符

转载 作者:行者123 更新时间:2023-11-28 08:11:38 25 4
gpt4 key购买 nike

我想做的是从缓冲区数组中读取字符

std::vector<char> SmartIO::PeekChar(){
int newlen= 0;
while(buffer[ptrSeek] != 0){
ptrSeek++;
newlen++;
}

std::vector<char> temp(newlen);
memcpy(temp.data(),&buffer[ptrSeek-newlen],newlen);
ptrSeek = 0;
return temp;
}

所以 temp.data()例如 methodtest‎‎‎‎««««««««î‏ 的返回而结果应该是 methodtest仅有的!那么是什么导致了这些奇怪的字符?

最佳答案

您的缓冲区/字符数组不是以 null 结尾的。

您必须知道缓冲区的长度,否则它必须以 null 终止。

关于c++ - char 数组末尾的奇怪字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8938886/

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