首先要澄清一点:C++的布尔变量其实就是#define而成的东西,只不过你看不到代码罢了!C#在这一点做的很好,它不允许布尔和其它数据类型进行互换,只能是:true,FALSE。
不说了,来看例子:
#include
using namespace std;
bool flag;//定义了一个布尔变量。
int main(){
int k;
cin>>k;
//①
flag=(k%2==0);//给布尔赋值
if (flag==true) cout<<"是偶数。"<
system("pause");
return 0;
}
“等等!”你大叫起来,“我完全可以直接判断啊:”
if (k%2==0) cout<<"是偶数。";
是的,你没有说错,在某一些情况下它确实如此,但这只是在简单的程序当中,那么请看下例:
#include
using namespace std;
int main(){
bool flag;//定义一个布尔
while (flag){
//do something
if (Condition1) flag=true;
//do something
if (Condition2) flag=true;
}
谁也不知道如果到while时在去判断是什么条件了,因为在Condition2之前它已经做了一堆事情。
===============================================================
麻烦把正确答案设为解答。
bool flag =true;
布尔变量就是 0/1,占一个字节,你完全可以用int flag来代替,在C语言中没有bool,一般都是用int、 short甚至 char来代替,
bool 一般用作判断标志
bool就是true和false,一般和if,while等放在一起用。
if(条件) 条件为true,执行【】代码,false则执行else【】代码
{
代码
}
其中的“条件”实质上就是true和false,你完全可以把他放到bool变量里。
例如
bool Abool=1==2;//显然这个条件是不可能成立的,因此Abool就是false
if(Abool)
{
Application->MessageboxA("你错了,这怎么可能相等?","错误",0);
}
else
{
Application->MessageboxA("对了,这是一定的","恭喜",0);
}
bool xx;
if(xx)
{
执行语句;
}
bool 就是条件为真假嘛
布尔型变量是有两种逻辑状态的变量,它包含两个值:真和假。如果在表达式中使用了布尔型变量,那么将根据变量值的真假而赋予整型值1或0。要把一个整型变量转换成布尔型变量,如果整型值为0,则其布尔型值为假;反之如果整型值为非0,则其布尔型值为真。布尔型变量在运行时通常用做标志,比如进行逻辑测试以改变程序流程。
#include iostream.h
int main()
{
bool flag;
flag=true;
if(flag) cout<
}