c++ - 用c ++编写程序以反向输出字符串,结果没有输出
问题描述
#include <iostream>
using namespace std;
int main() {
int i;
string userInput;
int index;
getline(cin, userInput);
index = userInput.length();
for(i = index; i <= 0; i--) {
cout << userInput.at(i);
}
return 0;
}
程序正在生成绝对 0 输出。没有错误或错误,我只是无法生成任何输出......为什么有任何想法?
解决方案
你的循环条件错误
尝试i >= 0
(而不是<=
)
此外,您需要从以下位置开始索引index-1
工作示例:
#include <iostream>
using namespace std;
int main() {
int i;
string userInput;
int index;
getline(cin, userInput);
index = userInput.length();
for(i = index-1; i >= 0; i--) {
cout << userInput.at(i);
}
return 0;
}
推荐阅读
- java - 如何在内部测试类中注入弹簧上下文?或者还有什么解决方法?
- php - 可选表单字段返回错误并且表单未处理
- python - 如何使用 QToolButton 或 QPushButton 将本地保存的 GeoJSON 加载到带有 QTableWidget 或 QTableTree 的 Qt 对话框中?
- java - 有没有更有效的方法可以从多线程过程中获得“未来”的结果?
- ruby-on-rails - 用虾生成pdf表格
- flutter - 在推送到包含该字段的路线后,颤振焦点在 CupertinoTextField
- c++ - 如何将本地文件嵌入到从 C++ 项目生成的 exe 文件中?
- javascript - 带有步骤的进度条作为轮播指示器
- java - 无法反序列化对 java 类对象的响应
- c# - 只取满足 MySQL 中第二个条件的第一个