云服务器免费试用

C 语言之布尔类型的使用方法

服务器知识 0 1429

C语言没有布尔变量,逻辑事件用真与假来叙述,数据化为数字0与1,表达式操作的结果非0即为1

C 语言之布尔类型的使用方法

C 语言标准(C89) 没有定义布尔类型,如果你使用 true 和 false,会出现以下错误:

infinite.c:5:12:error:useofundeclaredidentifier'true'  while(true){    1errorgenerated.  make:***[infinite]Error1  

我们可以借助 C 语言的宏定义来哦设置:

//宏定义布尔类型  #defineBOOLint  #defineTRUE1  #defineFALSE0    //定义一个布尔变量  BOOLflag=FALSE;  

也可以通过枚举类来定义:

typedefenum  {  true=1,false=0  }bool;  

实例

#include    //计算n!,n的值在main中定义  intmain(void)  {  intn=10;//计算叠乘数  intsum=1;//用来存放叠乘的结果  typedefenum  {  true=1,false=0  }bool;  boolflag=false;//叠乘标记    intnum=n;//循环次数  while(!flag)  {  sum=sum*(num--);  //当num=1时结束循环  if(num==1)  {  flag=true;  }  }  printf("%d的叠乘值为%dn",n,sum);  return0;  }  

输出结果为:

10的叠乘值为3628800  

C99 还提供了一个头文件 定义了 bool 代表 _Bool,true 代表 1,false 代表 0。只要导入 stdbool.h ,就能非常方便的操作布尔类型了。

实例

//导入stdbool.h来使用布尔类型  #include  #include    //计算n!,n的值在main中定义  intmain(void)  {  intn=10;//计算叠乘数  intsum=1;//用来存放叠乘的结果  boolflag=false;//叠乘标记    intnum=n;//循环次数  while(!flag)  {  sum=sum*(num--);  //当num=1时结束循环  if(num==1)  {  flag=true;  }  }  printf("%d的叠乘值为%dn",n,sum);  return0;  }  

输出结果为:

10的叠乘值为3628800  

本文来源:www.lxlinux.net/8696.html,若引用不当,请联系修改。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942@qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: C 语言之布尔类型的使用方法
本文地址: https://solustack.com/53861.html

相关推荐:

网友留言:

我要评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。