c++ - 查询for循环初始化、条件和增量

标签 c++

我是 C++ 和编程 Word 的新手,我正在学习 For 循环。现在我研究了如果循环体中有条件和增量,则 In 循环会起作用,例如:

for(int i=10;i<15;i++)

但是我在一些网站上看到过一段代码,它是这样的:

for(;NULL;)
{
cout<<"hello";
}

现在,有人可以解释一下它的输出是什么以及它是如何工作的吗?

最佳答案

在 C++ 中,控制 for 循环的所有 3 个表达式都是可选的。这使得语言变得强大。在您的情况下,您缺少初始化(通常)循环计数器的表达式,以及通常用于递增循环计数器的表达式。你所拥有的是停止条件

如果 Null 具有到 bool 类型的上下文转换,则程序将编译。不然不会。让我们假设确实如此:

如果转换后的 bool 值为 false,则循环体永远不会运行。

如果转换后的 bool 值为 true,则循环体将运行。 (请注意,转换可能可能会更改转换后的对象,因此最终可能会产生false,因此循环最终会终止!)

关于c++ - 查询for循环初始化、条件和增量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55117956/

相关文章:

c++ - 自定义堆栈上 std::string 数据的数量

c++ - boost 序列化: save_construct_data not called

c++ - 在其参数结构上重载 C/C++ 预处理器宏

c++ - 为什么ADL找不到函数模板?

c++ - 添加到动态数组

c++ - 通过 C++ Serial 与 Arduino 对话

c++ - 答案回顾 - 从 'const char*' 到 'char' 的无效转换

c++ - 方法返回被分配给变量

c++ - 按字母顺序排列的字符串

时间:2019-03-17 标签:c++openclreturnCL_OUT_OF_RESOURCES