精华内容
下载资源
问答
  • c语言中bool的用法

    千次阅读 2021-05-18 14:22:15
    C语言是目前世界上最流行、使用最广泛的高级程序...c语言中bool的用法如下:C99之前没有定义bool型,在C99在stdbool.h定义了_Boolbool,当然true 和 false也没有定义。但是C++是有bool型的,并且true 和 fal...

    C语言是目前世界上最流行、使用最广泛的高级程序设计语言之一,具有高效、可移植性好等优点,特别是在嵌入式领域有着广泛的应用。下面小编就跟你们详细介绍下c语言中bool的用法,希望对你们有用。

    c语言中bool的用法如下:

    C99之前没有定义bool型,在C99中在stdbool.h中定义了_Bool为bool,当然true 和 false也没有定义。但是C++中是有bool型的,并且true 和 false也是有定义的。

    所以如果是C99之前的标准,需要我们自己定义bool,如

    typedef enum {false = 0, true = 1} bool;

    /* Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.

    This file is part of GCC.

    GCC is free software; you can redistribute it and/or modify

    it under the terms of the GNU General Public License as published by

    the Free Software Foundation; either version 2, or (at your option)

    any later version.

    GCC is distributed in the hope that it will be useful,

    but WITHOUT ANY WARRANTY; without even the implied warranty of

    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License

    along with GCC; see the file COPYING.  If not, write to

    the Free Software Foundation, 51 Franklin Street, Fifth Floor,

    Boston, MA 02110-1301, USA.  */

    /* As a special exception, if you include this header file into source

    files compiled by GCC, this header file does not by itself cause

    the resulting executable to be covered by the GNU General Public

    License.  This exception does not however invalidate any other

    reasons why the executable file might be covered by the GNU General

    Public License.  */

    /*

    * ISO C Standard:  7.16  Boolean type and values  

    */

    #ifndef _STDBOOL_H

    #define _STDBOOL_H

    #ifndef __cplusplus

    #define bool    _Bool

    #define true    1

    #define false   0

    #else /* __cplusplus */

    /* Supporting in C++ is a GCC extension.  */

    #define _Bool   bool

    #define bool    bool

    #define false   false

    #define true    true

    #endif /* __cplusplus */

    /* Signal that all the definitions are present.  */

    #define __bool_true_false_are_defined   1

    #endif  /* stdbool.h */

    1.FALSE/TRUE与false/true的区别:

    false/true是标准C++语言里新增的关键字,而FALSE/TRUE是通过#define,这要用途

    是解决程序在C与C++中环境的差异,以下是FALSE/TRUE在windef.h的定义:

    #ifndef   FALSE

    #define   FALSE   0

    #endif

    #ifndef   TRUE

    #define   TRUE   1

    #endif

    也就是说FALSE/TRUE是int类型,而false/true是bool类型;所以两者不一样的,只不过

    我们在使用中没有这种感觉,因为C++会帮你做隐式转换。

    2.bool的大小与BOOL的区别:

    bool在C++里是占用1字节,而BOOL是int类型,int类型的大小是视具体环境而定的;所以来说:

    false/true只占用1个字节,而TRUE/FALSE视具体环境而言,以下是BOOL在windef .h中的定义:typedef   int   BOOL;

    3.NULL与0的区别:

    还是让我们看一下windef.h中NULL的定义:

    #ifndef   NULL

    #ifdef   __cplusplus//这个是指示是用C++来编译程序

    #define   NULL   0

    #else

    #define   NULL   ((void   *)0)

    #endif

    #endif

    所以说:它们没有区别,只不过在C里面会做一个强制类型转换。

    展开全文
  • C语言中定义bool类型

    千次阅读 2021-02-08 17:49:38
    C语言里面是没有bool(布尔)类型的,C++里面才有,这就是说,在C++里面使用bool类型是没有问题的。bool类型有只有两个值:true =1 、false=0。 不过 C语言中可以自己定义咯 #define bool char #define ture 1 #...

    C语言里面是没有bool(布尔)类型的,C++里面才有,这就是说,在C++里面使用bool类型是没有问题的。bool类型有只有两个值:true =1 、false=0。

    不过 C语言中可以自己定义咯

            #define bool char
            #define ture 1
            #define false 0
    
    展开全文
  • bool类型怎么用(c语言bool类型 怎么用)2020-06-23 01:59:07共10个回答什么语言的?bool和其他的一样,比如int,只是bool只有两个值,true或者false.boolflag=true;就是定义了一个bool类型的变量flag,他的值为true.也可以...

    bool类型怎么用(c语言bool类型 怎么用)

    2020-06-23 01:59:07

    共10个回答

    什么语言的?bool和其他的一样,比如int,只是bool只有两个值,true或者false.boolflag=true;就是定义了一个bool类型的变量flag,他的值为true.也可以是boolflag=false;flag的值为false.

    ddd56e211dcbb812e687fc746555d574.png

    c语言中没有bool类型.使用的时候用任意整型变量即可,包括char,int,long,shortint都可以.c语言的逻辑判断只是判断0或非0,只要能保存整型数据的变量类型都可以作为布尔型使用.用特殊色彩标记关键字的功能是编辑器的功能而非编译器的功能,因为c++有bool类型,因此bool会被编辑器标亮,但是c语言编译器是不会认识这个关键字的.

    5e5e01c7b13448fe2bb9b7dc67545069.png

    bool类型在pascal语言中才有,它有两种,True和False.其它语言中都没有这种类型.但它存在比如表达式5

    4fc0b54136eb270fcc30fcc3a80d7e0d.png

    C语言没有BOOL类型变量boolean类型是C++所独有的由于使用BOOL类型可以使代码更具有可读性,很多编程者都在C中自己定义了类似的应用,一般方法有两种:一、采用宏定义方式(windef.h中就是用的这种方式)typedefintBOOL;#definetrue0#definefalse1二、采用枚举型变量方式(这种方式更象C++的boolean类型)typedefenum{true=0,false}BOOL;接下来就可以象C++一样,方便的使用BOOL类型了.

    cdbcfe7e97ac108dcc95a2414ede7eb0.png

    我给你改了一下,首先说没有发现你说的bool啥的编译错误,bool使用是对的.有问题,但不是bool的,sqrt使用有问题,必须输入double输出double才行,所以做了个类型

    bool为布尔型,只有一个字节,取值false和true,是0和1的区别.比如类:classmyclass{public:myclass(inta,intb):first(a),second(b){}intfirst;intsecond;booloperatorreturnfirst}};boolless_second(constmyclass&m1,constmyclass&m2){returnm1.second}这里bool的意思是返回bool类型值bool有两个值:true和false

    bool类型是判断真假的,结果只有两个,一个真一个假,在c++中有一条规定,非0即为真,所以比如说while(1),1可以写成23456⋯⋯,while的参数应该是一个bool型,当满足条件为真时就执行循环,因为非0为真,所以上面的那句话就会进入死循环,要让循环结束,可以在里面加跳转语句或者break,如果用bool类型处理的话,比如i=10;while(i),可以在while循环里面写i--,就是每次都自减1,就通过bool类型实现了空值循环次数的作用

    bool型变量只有两个值,true或者false.一般做为标志来使用.其实用一个整数等于1和等于0来实现效果一样,但是bool型变量占的空间更小.

    1.boola;那么这个a可以赋值两种值,a=true或,a=false,一般bool就是用来判断的.比如if(a){}这种,为真就运行,为假就跳过.2.这个可以用到一问中说的bool值,首先定义a=false.while(1){读取;判断是否满足;如果满足a=true;if(a){break;}else{“请重新输入”}}3.先定义两个函数,第一个就是猜价格的函数,第二个就是结束游戏或者继续游戏.第一个函数中如果猜对了就调用第二个函数并结束其中的循环,第二个函数可以让用户通过询问用户输入yesorno来判断,yes就调用第一个函数,no或其他就直接结束程序.

    bool是枚举类型.且值只有true和false也就是说,你要用到判断的时候可以用它,比如if()语句里面的条件.如果一个方法只有两个返回值,这是可以用bool值的,另外,如果一个函数的参数是bool值的,那自然当然bool值true和false两个,如果不想用bool类型,也可用1和2或者其他的代替(一般情况下)

    展开全文
  • C语言中bool类型

    千次阅读 2019-07-08 17:36:38
    之前一直都没有注意到,最近在用C语言写DSP算法时,偶然间发现我函数定义的bool类型的变量在VC6.0(我主要用它来检查一下语法错误)编译居然报错了,说是bool类型没有定义。用了这么久的C和C++了,一直觉得bool...

    之前一直都没有注意到,最近在用C语言写DSP算法时,偶然间发现我函数中定义的bool类型的变量在VC6.0(我主要用它来检查一下语法错误)中编译居然报错了,说是bool类型没有定义。用了这么久的C和C++了,一直觉得bool这种基本类型,应该是C语言内置的类型,怎么会没有定义呢?事实证明,我的想法完全错误了。

          有了网络,一切问题都变得那么容易了,我很容易地搜到了相关的解答。

          C语言里面是没有bool(布尔)类型的,C++里面才有,这就是说,在C++里面使用bool类型是没有问题的。bool类型有只有两个值:true =1 、false=0。

          但是,C99标准里面,又定义了bool类型变量。这时,只要引入头文件 <stdbool.h>,就能在C语言里面正常使用bool类型。这点我在Fedora9下验证过了,它自带的编译器是 gcc 4.3.0,符合C99标准。但是在VC6.0中,会报找不到头文件 stdbool.h 的错误,看来VC6.0确实比较老了。

          所以,为了兼容各种编译器,还是自己宏定义吧。^_^

                #define bool char //宏替换为char类型是因为char与bool都只占一个字节,比较相似
                #define ture 1
                #define false 0

           当然,宏定义的bool与真实的关键字bool还是有差别的。关键字bool修饰的变量,无论赋予其任何非零值,其存储的内容都是“00000001”,而宏定义的bool所修饰的变量,其存储的内容完全取决于我们赋的值。因此,当给宏定义的bool修饰的变量赋值时,老老实实赋予true或false,条件判断时也老老实实与true或false进行比较。
     

    展开全文
  • C99 新增了 _Bool 类型(布尔类型)用于表示真/假。_Bool 类型的变量的值只能是 0 或者 1。无论赋予任何非零值给 _Bool 类型的变量,它的值都只会是 1。例如:_Bool i_am_true = 15; // i_am_true 的值是 1_Bool am_i_...
  • C语言中bool

    千次阅读 2021-05-25 06:03:23
    C99之前没有定义bool型,在C99在stdbool.h定义了_Boolbool,当然true 和 false也没有定义。但是C++是有bool型的,并且true 和 false也是有定义的。所以如果是C99之前的标准,需要我们自己定义bool,如...
  • C语言bool类型

    千次阅读 2021-02-24 14:57:38
    c语言中bool数组的使用方法: 1.导入 首先要导入stdbool.h头文件: #include <stdbool.h> 2.声明 int N = 5; bool flag [N]; 3.初始化 虽然bool类型默认值是0,但是仍要初始化。
  • C语言中 bool的用法

    千次阅读 2021-05-22 18:23:07
    布尔型(bool)变量的值只有 真 (true) 和假 ...bool可用于定义函数类型为布尔型,函数里可以有 return TRUE; return FALSE 之类的语句。布尔型运算结果常用于条件语句:if (逻辑表达式){如果是 true 执行这里;}else{...
  • C语言的布尔类型(_Bool)

    千次阅读 2021-05-24 04:47:10
    C语言的布尔类型(_Bool)也许很多人都和我一样,不知道现在的C语言已经有了布尔型:从C99标准开始,类型名字为“_Bool”。在此之前的C语言中,使用整型int来表示真假。在输入时:使用非零值表示真;零值表示假。在...
  • c语言中使用bool_在C语言中使用bool

    千次阅读 2020-07-30 10:50:31
    c语言中使用boolFirst, understand the bool in C++ programming language. In C++ programming, "bool" is a primitive data type and it can be used directly like other data types. "bool" is a Boolean data ...
  • 我们知道在C++里有专门的bool类型,用来表示真或假。但是在C语言里没有这样的类型(至少我是一直这么认为的),表达式的值0为假,非0为真。所以条件判断语句( if(…)、while(…) )非常灵活,甚至一个指针类型都可以是...
  • 之前一直都没有注意到,最近在用C语言写DSP算法时,偶然间发现我函数定义的bool类型的变量在VC6.0(我主要用它来检查一下语法错误)编译居然报错了,说是bool类型没有定义。用了这么久的C和C++了,一直觉得bool...
  • 今日份知识更新,即《深入理解C语言中类型转换》文章目录:一、隐式转换 1.1.基本类型转换 整形提升 算数转换 1.2.指针转换二、显式转换隐式转换基本类型转换整形提升表达式计算时,整型会首先提升到int类型,当...
  • 最近学习数据结构,发现教材的程序采用的c++写的,并不是纯c语言程序,于是我想尝试自己用纯c语言编写,遇到的第一个问题就是:c++有bool类型,但是c语言没有这玩意,如果采用#define来对True和False 结合int进行宏...
  • c语言中bool的使用

    2021-09-28 19:18:07
    bool可用于定义函数类型为布尔型,函数里可以有 return TRUE; return FALSE 之类的语句。 布尔型运算结果常用于条件语句:if (逻辑表达式){如果是 true 执行这里;}else{如果是 false 执行这里;}; 扩展资料 ...
  • C语言中原生类型没有bool,C++有。在C语言中如果需要使用bool类型,可以用int来代替。 很多代码体系,用以下宏定义来定义真和假 #define TRUE 1 #define FALSE 0
  • c语言中bool类型

    千次阅读 2017-09-11 20:50:42
    以前一直在写c++,所以想当然的认为c语言中也有bool类型,然而并没有,只是在C99标准引入的新的关键字_Bool 和c++的bool类似,如果在c也想直接使用bool,可以添加stdbool.h头文件参考:...
  • 我们知道在C++里有专门的bool类型,用来表示真或假。但是在C语言里没有这样的类型(至少我是一直这么认为的),表达式的值0为假,非0为真。所以条件判断语句( if(…)、while(…) )非常灵活,甚至一个指针类型都可以是...
  • 面试——c语言定义bool类型

    千次阅读 2018-10-22 18:53:02
    C语言自定义bool类型的两种方式 由于C语言以0,1分别代表false,true, 可以自定义bool类型,这里有两种方式作为参考: 1:定义枚举类型:typedef enum{false,true} bool; 2:也可以使用预定义 #ifndef bool #...
  • long long 在c语言中什么类型

    千次阅读 2021-05-19 10:27:51
    “longlongint”在C语言中是64位长整型数据类型。longlong是属于int型,一般来讲,是longint型大小的两倍,int型的4倍。“longlongint”在C语言中可以简写为“longlong”,作为“long”和“int”数据类型的强化版...
  • 今天早上用C语言写断链表,定义了一个bool类型 发现提示未定义标识符然后去度娘上查了一下发现 C语言没有BOOL类型变量 boolean类型是C++所独有的 下面说说解决办法: 方法一: 更改文件后缀名为cpp 方法二: 采用宏...
  • C语言中bool变量

    2021-08-25 19:59:55
    但是c99引入了_Bool类型(_Bool就是一个类型,不过在新增头文件stdbool.h,被重新用宏写成了 bool,为了保证C/C++兼容性)。 目前为止大部分C语言书籍采用的标准还是c90标准,因此我们很少用bool类型bool类型...
  • C语言中中bool类型报错解决

    千次阅读 2020-07-31 18:14:33
    1、添加#include <stdbool.h> 头文件 2、另一种方式,可以添加以下枚举类型解决: typedef enum {FALSE = 0, TRUE = !FALSE} bool; 但是有时候已经定义了TRUE ,所以可能报错。
  • 关于Linux—C语言中bool类型

    千次阅读 2020-04-14 18:16:37
    关于Linux c语言中的bool数据类型 bool类型属于基本数据类型,其类型名称为bool,值域为非零(true)和零(false)。如果我们不加入其他的头文件bool类型是会报错的。bool类型它包含在头文件 #include ...
  • C语言如何才能使用bool类型

    千次阅读 2019-10-08 07:17:35
    解决办法:加上头文件#include<... ,就可以直接使用类型bool = true/false; 1 #include<stdio.h> 2 #include<stdbool.h> 3 4 int main(){ 5 int number,array[1000]; 6 scanf("%d...
  • C语言中Bool类型

    千次阅读 2015-03-17 15:19:07
    最近在网上看到有一些说法说C语言里是没有bool类型的,但是我记得有一本书(《C Primer Plus》)里有过关于C语言bool类型的介绍,所以就翻了翻书,确定了C语言里的bool类型的确存在。下面介绍一下C语言的bool类型...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 66,429
精华内容 26,571
关键字:

c语言中bool是什么类型

c语言 订阅