C++ 如何使用布尔值(C+;+;)退出while循环
代码:C++ 如何使用布尔值(C+;+;)退出while循环,c++,C++,代码: while(CheckPalindrome==false) { cout为了测试Check回文函数的布尔响应,必须实际调用该函数 而不是 while (CheckPalindrome == false) { cout << "hi"; i = number; r = RevNum(i); adds++; CheckPalindrome(i); } bool CheckPalindrome(int i) { bool Check
while(CheckPalindrome==false)
{
cout为了测试Check回文函数的布尔响应,必须实际调用该函数
而不是
while (CheckPalindrome == false)
{
cout << "hi";
i = number;
r = RevNum(i);
adds++;
CheckPalindrome(i);
}
bool CheckPalindrome(int i)
{
bool Check = false;
if (i == rev)
{
Check = true;
}
return Check;
}
换成
while(CheckPalindrome == false)
然后可以在函数中修改someVariable
当然,由于函数返回布尔值,正确的语法是:
while(CheckPalindrome(someVariable) == false)
如果没有前面的!
,它将是while(true)
。!
使它成为while(false)而不是true
CheckPalindrome
是一个函数。函数名本身的计算结果就是该函数的地址。由于这是一种指针类型,将其作为if
/while
的条件进行计算相当于将其与空指针进行比较,因此while
循环本质上与以下相同:
while ( !CheckPalindrome(someVariable) )
循环执行时,checkPalindrome
的地址不会改变,因此这只能做两件事中的一件:要么checkPalindrome
位于一个比较等于空指针1的地址,而循环根本不会执行,要么它比较为不等于空指针,然后得到一个无穷大的值e环
1.可能有争论的余地,认为这种情况永远不会发生/实际上是不允许的,但即使发生了,也不会有任何帮助。
首先,这不是一个。请,还有。至于你的问题,
CheckPalindrome
表达式本身是做什么的?你如何调用函数?也许是时候回到你的教程、课本或课堂笔记上重新阅读它们了?如果你只是猜测一些事情,那么就正确地学习。你调用了函数循环条件将函数与false
进行比较,而不是将其返回值进行比较。
while (checkPalindrome == nullptr)