gpt4 book ai didi

c++ - [number]-F出现在String的末尾?

转载 作者:太空狗 更新时间:2023-10-29 23:36:56 24 4
gpt4 key购买 nike

我是 c++ 的新手,周日凌晨 1 点正在拼凑一个回文程序,因为!我遇到过这个问题:

输入:测试反转:tset3-F

3-F 从何而来?有时它只是 -F 或另一个数字 -F。这是从哪里来的?

这是我的代码:

 #include <iostream>
#include <string>


using namespace std;

int main() {

string eString;

int length;
int counter = 0;

cout << "Enter String: ";
cin >> eString;

length = eString.length();


char reverseChar[length];




for(int x = eString.length() -1; x > -1; x--) {

reverseChar[counter] = eString[x];

counter++;

}
cout << "Reverse: " << reverseChar;


}

非常感谢您的宝贵时间。

最佳答案

您没有在字符串末尾添加空终止符。它是恰好在内存中的随机数据。

reverseChar 的大小应该是 length + 1

最后一个字符应该设置为'\0'

reverseChar[长度] = '\0';

参见:http://en.wikipedia.org/wiki/Null-terminated_string

关于c++ - [number]-F出现在String的末尾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11488402/

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