精华内容
下载资源
问答
  • C语言有bool类型吗

    千次阅读 2010-06-17 19:32:00
    我到今天终于发现原来C语言是没有bool类型的,汗死……原来C++中才,不过C99中新增的_Bool关键字可以表示布尔类型。 C99关键字(ISO/IEC 9899:1999) auto break case char const continue ^^^^^

        我到今天终于发现原来C语言是没有bool类型的,汗死……原来C++中才有,不过C99中新增的_Bool关键字可以表示布尔类型。

    C99关键字(ISO/IEC 9899:1999)
    auto
    break
    case
    char
    const
    continue
    default
    do
    double
    else
    enum
    extern
    float
    for
    goto
    if
    inline
    int
    long
    register
    restrict
    return
    short
    signed
    sizeof
    static
    struct
    switch
    typedef
    union
    unsigned
    void
    volatile
    while
    _Bool
    _Complex
    _Imaginary

     

    ISO/IEC 14882(C++标准关键字)
    Second edition 2003-10-15

    asm do  if  return typedef
    auto double inline  short typeid
    bool dynamic_cast int  signed typename
    break else  long  sizeof union
    case enum  mutable  static unsigned
    catch explicit namespace  static_cast using
    char export new  struct virtual
    class extern  operator  switch void
    const false  private  template volatile
    const_cast float protected this wchar_t
    continue for  public  throw  while
    default friend  register  true
    delete goto  reinterpret_cast try

     

    不过目前大部分编译器、教材(包括谭浩强的C语言)都在C89的基础上,据说GCC支持大部分C99标准,而Microsoft则并不感兴趣。_Bool 在最新的VS2010上也不支持,同样C99说变量定义并不要求在句块开头,VS2010仍然不支持!但它们却都被GCC支持。

    展开全文
  • C语言有bool类型吗

    万次阅读 多人点赞 2011-08-20 09:30:43
    之前一直都没有注意到,最近在用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
                #define ture 1
                #define false 0

    展开全文
  • C语言没有bool类型

    千次阅读 2015-07-01 18:12:29
    一些初学C语言,或者是对C语言不是很精通的朋友肯定觉得很奇怪,为什么在C++,JAVA等语言里使用的bool类型,在C语言里无法使用了呢? 问题解析 bool类型的变量,为0时表示为假,为非0时表示为真。但是原始C
    首先请大家回想一下,在你们所编写的C程序中,是否使用过bool(布尔)类型?bool类型一般用来表示真假,是程序设计中一个很基本的数据类型。但是,C语言里面并不直接支持bool类型。一些初学C语言,或者是对C语言不是很精通的朋友肯定觉得很奇怪,为什么在C++,JAVA等语言里使用的bool类型,在C语言里无法使用了呢? 
    

    问题解析
    bool类型的变量,为0时表示为假,为非0时表示为真。但是原始C语言中并不支持bool类型,若需要使用bool类型可以借用int类型自己定义一下,例如:

    [cpp]
    typedef int bool; 
    #define TRUE 1 
    #define FALSE 0 

    然后就可以在程序中使用bool类型了。用32位的int类型来当bool使用,这样无疑浪费了内存资源,因此对于内存敏感的程序中可以使用char来定义bool类型:


    [cpp] 
    typedef char bool; 
    #define TRUE 1 
    #define FALSE 0 

    进一步讨论
    C语言并非没有bool类型,而是在C99标准之前没有。C99标准中新增的头文件中引入了bool类型,与C++中的bool兼容。该头文件为stdbool.h,其源码如下所示:


    [cpp] 
    #ifndef _STDBOOL_H 
    #define _STDBOOL_H 
     
    #ifndef __cplusplus 
     
    #define bool    _Bool 
    #define true    1 
    #define false   0 
     
    #else /* __cplusplus */ 
     
    /* Supporting <stdbool.h> 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 */ 

    代码中的_Bool是C99标准为bool类型引入的新的关键字,sizeof(_Bool)的值为1,表面其为bool类型。既然为bool类型,那么0表示为假,其他任何值都表示为真,我们可以做一个小实验来测试一下:
    [cpp] 
    bool bb=10; 
    bool aa=0; 
    printf(" %d %d  \n",bb,aa); 

    输出的结果为1和0,这表明bool类型变量赋值为非0值得时候,只存储其值为1。


    最后,当需要使用bool类型时,推荐使用C99标准的bool类型而不是自己去定义,引入头文件<stdbool.h>即可,该头文件位于

    /usr/lib/gcc/i386-redhat-linux/4.1.1/include/stdbool.h(以我自己的Linux系统为例)。

    展开全文
  • 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数组的使用方法:

    1.导入

    首先要导入stdbool.h头文件:

    #include <stdbool.h>

    2.声明

    int N = 5;

    bool flag [N];

    3.初始化

    虽然bool类型默认值是0,但是仍要初始化。

    展开全文
  • 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类型,可以用int来代替。 很多代码体系中,用以下宏定义来定义真和假 #define TRUE 1 #define FALSE 0
  • 面试——c语言定义bool类型

    千次阅读 2018-10-22 18:53:02
    可以自定义bool类型,这里两种方式作为参考: 1:定义枚举类型:typedef enum{false,true} bool; 2:也可以使用预定义 #ifndef bool #define bool int #endif #ifndef true #define true 1 #endif #if...
  • C语言中中bool类型报错解决

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

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

    千次阅读 2016-09-17 20:48:13
    C语言自定义bool类型的两种方式 定义枚举类型:typedef enum{false,true} bool; 也可以使用预定义 #ifndef bool #define bool int #endif #ifndef true #define true 1 #endif #ifndef false ...
  • C语言有bool变量吗?

    万次阅读 2018-08-04 18:44:28
    1.C/C++中定义的数据类型:  C语言中定义了6种基本数据类型:short,int,long,float,double,char  4种构造类型:数组,结构体(struct),共用类型(union),枚举类型(enum)  ...
  • 关于Linux—C语言中的bool类型

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

    千次阅读 2017-09-11 20:50:42
    以前一直在写c++,所以想当然的认为c语言中也有bool类型,然而并没有,只是在C99标准引入的新的关键字_Bool 和c++中的bool类似,如果在c中也想直接使用bool,可以添加stdbool.h头文件参考:...
  • 今日份知识更新,即《深入理解C语言中的类型转换》文章目录:一、隐式转换 1.1.基本类型转换 整形提升 算数转换 1.2.指针转换二、显式转换隐式转换基本类型转换整形提升表达式计算时,整型会首先提升到int类型,当...
  • C语言 bool类型

    2017-07-10 08:32:58
    C语言里面是没有bool(布尔)类型的,C++里面才,这就是说,在C++里面使用bool类型是没有问题的。bool类型有只有两个值:true =1 、false=0。  为了兼容各种编译器,可以自己定义。 #typedef bool int 、、...
  • 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

    千次阅读 2019-11-18 23:21:31
    解决办法:加上头文件#include<stdbool.h> ,就可以直接使用类型bool = true/false; bool append_arr(); bool insert_arr(); bool delete_arr();
  • 最近学习数据结构,发现教材的程序采用的c++写的,并不是纯c语言程序,于是我想尝试自己用纯c语言编写,遇到的第一个问题就是:c++有bool类型,但是c语言没有这玩意,如果采用#define来对True和False 结合int进行宏...
  • C语言自定义bool类型

    万次阅读 2011-11-14 15:33:15
    可以自定义bool类型,这里两种方式作为参考: 定义枚举类型:typedef enum{false,true} bool; 也可以使用预定义 #ifndef bool #define bool int #endif #ifndef true #define true 1 #end
  • 浅谈C语言中的布尔(bool类型

    万次阅读 多人点赞 2018-11-13 11:46:40
    浅谈C语言中的布尔(bool类型
  • 标准C语言中使用bool类型

    千次阅读 2016-01-27 15:35:47
    标准C语言中并没有关于bool的定义, 不过bool可以自己定义的 #define bool int #define false 0 #define true 1 这三个宏那么就可以了
  • C语言中的Bool类型

    千次阅读 2015-03-17 15:19:07
    最近在网上看到一些说法说C语言里是没有bool类型的,但是我记得一本书(《C Primer Plus》)里过关于C语言bool类型的介绍,所以就翻了翻书,确定了C语言里的bool类型的确存在。下面介绍一下C语言中的bool类型...
  • 今天早上用C语言写断链表,定义了一个bool类型 发现提示未定义标识符然后去度娘上查了一下发现 C语言没有BOOL类型变量 boolean类型是C++所独有的 下面说说解决办法: 方法一: 更改文件后缀名为cpp 方法二: 采用宏...
  • C语言bool使用

    千次阅读 2019-12-25 21:56:01
    C语言没有bool型变量,想要使用必须自己定义,可以使用最简单的宏定义 #define bool int #define true 1 #define false 0
  • --------------------------------------------------------------------------------...R给出的关键字:charshortintlongfloatdoubleunsignedC90标准添加的关键字:voidsignedC99标准添加的关键字:_Bool _Complex ...
  • 我们知道在C++里专门的bool类型,用来表示真或假。但是在C语言里没有这样的类型(至少我是一直这么认为的),表达式的值0为假,非0为真。所以条件判断语句( if(…)、while(…) )非常灵活,甚至一个指针类型都可以是...
  • 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类型定义

    千次阅读 2013-08-11 21:25:00
    在我们的C语言程序中,经常用到布尔类型,但是C标准并不支持布尔类型,但我们可以自己实现其类型,实现代码如下:typedef enum{ false = 0, ture = !false}bool; 转载于:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 61,092
精华内容 24,436
关键字:

c语言有bool类型吗

c语言 订阅