gpt4 book ai didi

c++ - 如果我使用 cout 语句作为 if 语句的条件会发生什么?

转载 作者:行者123 更新时间:2023-12-05 09:29:14 24 4
gpt4 key购买 nike

所以,我的编程老师让我尝试将 cout 语句作为 if 语句的条件,看看会发生什么。我试过了(只是做了一个随机代码)并没有发现任何特别之处。这是代码。

#include<iostream>
using namespace std;
int main()
{
int x=1;
int y=2022;
if(cout<<"Covid")
{
cout << "\n Us \n";
x=y;
cout << x;
}
}

输出很简单

Covid
Us
2022

我不明白为什么要使用它。根据我的业余理解,即使我使用 else 语句或任意数量的 else-if 语句,它们也不会运行,因为 if 语句的条件是 self 实现的。我可以直接编写整个代码而不使用 if 语句。那么,使用 if 语句的目的可能是什么?任何一般用途?

最佳答案

在 C++11 之前,当您编写 if(cout << "Covid") 时, 有一个隐式转换为 void* . C++ 标准未指定此值,除非流处于错误状态,然后 nullptr被退回。

从 C++11 开始,隐式转换为 bool . false表示流处于错误状态,true否则。

请注意,您必须注入(inject)一个非常时髦的 iostream -derived 对象,根据您的输入,输出确实是“Pakistan”!

关于c++ - 如果我使用 cout 语句作为 if 语句的条件会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70759474/

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