gpt4 book ai didi

C++:对循环进行故障排除

转载 作者:太空宇宙 更新时间:2023-11-04 14:44:46 25 4
gpt4 key购买 nike

你好。我在尝试执行一段代码时遇到构建问题。我是 C++ 的新手,我正在努力解决这个问题,所以这个问题可能非常简单。如果有人能帮助我,我将不胜感激。这是代码;

#include <iostream>
using namespace std;

int i = 0;
char input = ' ';

int main()
{
for(i = 1; i <= 100; ++i)
{
if((cin >> input) == 'a')
{
break;
}
}
return 0;
}

问题在于“if((cin >> input) == 'a')”运算符 '==' 有问题

最佳答案

您遇到的问题是表达式 cin >> input 不“返回”键入的字符,它返回 cin 作为 istream&对象。

您的直接解决方法是:

if( ( cin >> input ) && ( input == 'a' ) )
{
break;
}

检查 cin >> input 的原因是防御性的:如果由于任何原因 istream 无法读取,它就会变得无效。

需要注意的是,C++ 中的循环通常是从零开始的,最好限制 i 变量的范围:

for( int i = 0; i != 100; ++i )

关于C++:对循环进行故障排除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17993353/

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