为什么下面代码的输出停在0
Why the output in following code stops at 0?
#include<iostream>
using namespace std;
main()
{
int test =3;
while(test--)
{
cout<<test;
}
}
上面的代码显示了输出210。我的问题是为什么它停在0??为什么它不能超过0?
在c
和c++
中,任何非零都被求值为真,零被求值为假。这就是它停在0
的原因。for for循环也是如此。
因此有时会发现-
while(1){
//do something
if(some_condition) break;
}
这意味着它是一个无限循环——永远运行。
"上面的代码显示了输出210。我的问题是为什么它停在0??为什么它不能超过0?"
因为0
的int
值在布尔表达式中计算为false
,而while()
循环在条件中停止于false
将while循环中的条件设置为test——,它将执行3次。当test为1时,它等于while(1)或while(true)并继续while循环。当test为0时,它等于while(0)或while(false), while循环停止。为什么是210年?因为你打印的时候没有"new line"
相关文章:
- 为什么我的代码在输出中增加了93天
- 为什么在C的循环中使用printf的Rust代码不显示输出,而在C++的循环中显示std::cout
- 在我的代码中,获得最大的Pair Wise产品C++和输出并不总是正确的
- 我无法获取以下代码的输出
- 为什么我的C++程序的程序集输出充满了 .ascii,没有汇编代码?
- 编译并运行后,输出未出现在 Visual Studio 代码中
- VI工作室代码错误无法打开输出文件主.exe
- 代码编译没有任何输出,入门程序
- 与其他编译器相比,相同的代码在工作室Microsoft提供不同的输出
- 可能我知道为什么这段代码没有给出任何输出吗?
- 从排序数组中删除重复项,具有不同代码方式的相同解决方案具有不同的输出
- Clang 给了我符号更改的警告,但代码仍然产生正确的输出
- 为什么这两个版本的代码给出不同的输出
- 以下与指针相关的代码的输出是什么?
- C++和 Python 中的代码相同,但输出不同
- 为什么我的代码块上没有显示输出?
- C++ 高级代码未给出正确的输出
- (C++)分解这个简单的输入/输出代码:
- 错误的输出代码
- 奇怪的输出(代码块codebblocks -16.01mingw-setup.exe)