检查值是否等于 a 或 b
Checking if value equals either a or b
我试图让用户能够控制他们何时想要退出while循环,而且我想知道如何在完成后退出程序
cout<<"Play again? (Y/N)"<<endl;
char userInput;
cin>>userInput;
if (userInput='y'|'Y')
{
cin.clear();
cin.ignore();
input();
userInput=0;
}
else
{
exit(0);
}
return 0;
表达式userInput='y'|'Y'
遭受三个基本问题和一个复合问题。
-
'y'|'Y'
不是逻辑 OR 操作。这是一个按位 OR 运算。 - 它不会将
userInput
的值与'y'
或'Y'
进行比较。 - 它将子表达式
'y'|'Y'
的值分配给userInput
,该子表达式的计算结果是使用 ASCII 编码的系统中的整数值 121。 - 因此,
if
语句的条件始终计算为true
。
您需要的是:
if ( userInput == 'y' || userInput == 'Y' )
相关文章:
- 检查输入是否不是整数或数字
- 检查值是否在集合p1和p2中,但不在p3中
- 检查 std::shared_ptr<> 的当前底层类型是否为 T
- 在c++中检查长方体是否尽可能快地重叠(无迭代)
- 如何检查线程是否锁定
- C++LDAP检查用户是否是特定组的成员
- 检查TCHAR数组输入是否为带符号整数C++
- 如何检查QList中是否存在值
- 检查函数返回类型是否与STL容器类型值相同
- 检查是否以特定精度给出双精度
- 检查向量是否具有所有可能的字符组合
- 检查注册表项是否链接到(或副本)另一个注册表项
- 地图计数确实很重要,或者只是检查是否存在
- 检查 2 棵树是否具有相同的顺序
- std::next 是否检查我们是否已经在容器的末尾?
- "!" "== 0"是否检查 int 是否是 0 的好做法?
- 我是否检查是否存在带或不带参数的宏函数
- dynamic_cast是否检查被查询对象的type_info对象,或者递归地检查
- 在VS2010中编译c++ 11中的代码时,std::function()是否检查类型
- 如果第二个参数"0",strcmp 是否C++检查字符串中的每个值?