gpt4 book ai didi

c++ - 这个反向字符串代码是否正确?

转载 作者:行者123 更新时间:2023-11-28 00:23:33 27 4
gpt4 key购买 nike

当我在我的 IDE 上运行这段代码时,它对我有用,但它在有练习的网站上不起作用。我遇到段错误。那么这段代码正确吗?我做错了吗?

#include <iostream>
#include <string>
using namespace std;

string FirstReverse(string str) {
for (int i = 0, back = str.size()-1; i != back; ++i, --back)
{
char c = str[back];
str[back] = str[i];
str[i] = c;
}
return str;
}

int main() {
cout << FirstReverse("hello");
return 0;
}

此外,最好的方法是什么?

最佳答案

您的索引只需要达到长度的一半,这样我们就可以确保一对之间的交换只发生一次:

for (int i = 0; i < str.size() / 2 ; i ++)
{
char c = str[str.size() - 1 - i];
str[str.size() - 1 - i] = str[i];
str[i] = c;

关于c++ - 这个反向字符串代码是否正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26227387/

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