【发布时间】:2022-01-21 12:49:32
【问题描述】:
我正在尝试将字符串 r 转换为 int(num)。但它一直返回 0。注意:当我返回字符串时,答案(反转的数字)是正确的。我的代码如下所示:
string n, r = "";
cin >> n;
for (int i = n.length(); i >= 0; i--)
{
r += n[i];
}
int num;
istringstream(r) >> num;
cout << num << endl;
【问题讨论】:
-
尝试使用 std::stoi 将字符串转换为整数。如果输入不正确,它会抛出一个异常,告诉你出了什么问题:en.cppreference.com/w/cpp/string/basic_string/stol
-
我这样做了,我什至没有返回值。
-
试试std::reverse,你不应该从n.length()开始,而是从n.length()-1开始
标签: c++ string for-loop char reverse