精华内容
下载资源
问答
  • C语言我的编译器中没有BOOL头文件,在网上看了一个头文件源码,有点不懂,自己简化一下,不知效果也网上是不是一样的?另外对网上的源码不懂的地方也想问一问。 我的写法是: #ifndef STDBOOL_H_ #define ...
  • bool: C++是支持原生bool的!  在C语言中,我们使用bool类型,必须用到stdbool.h文件,他是使用宏的方式定义了true和false,这并非原始bool,是使用替代品代替的。  C++中的bool才符合真正bool的意义,0为false,...

    bool:

    C++是支持原生bool的!

        在C语言中,我们使用bool类型,必须用到stdbool.h文件,他是使用宏的方式定义了true和false,这并非原始bool,是使用替代品代替的。

        C++中的bool才符合真正bool的意义,0为false,非0为true!原生bool是小写的bool,bool有很多种!宏定义都是int类型的。

            BOOL(也非原生bool),_Bool(C98标准后加上的,等同于bool),等。bool是原生的(0和非0),其他的都是通过0和1来实现的!建议一直使用bool,只有bool这是最安全的!

    头文件的三种标准:

        #include <iostream>,这个库不以.h结尾,后缀名适用于区分使用,不加.h里面的内容也是一样的。
        C++是从C语言发展而来的,里面有几个标准:1:.h结尾的,就是从C继承来的。2:前面前缀c(eg:#include <cstdio>),也是从C继承过来的,但是这个符合C++标准,他和stdio.h里面基本一样,只是cstdio符合C++标准。使用C语言的标准库应该使用cstdio。3:标准C++库(#include <iostream>)。

    预编译头:

        建立文件的时候改为cpp格式,这样,软件会调用C++的编译器来编译。

        新建工程的时候,如果没点击空项目,VS默认会加上stdafx.h和stdafx.c,预编译头。他是VC所特有的,即windows下所特有的(给链接器使用)!可以没有他,以后建立工程就选空项目,预编译头是想给你提供便利,但一般是我们不需要的,也是不被C++标准承认的!

    域作用符:::

      全局变量和局部变量名可以相同,不会重定义,如果在函数内调用全局变量就可以用::
      eg:
            int num = 100;
            int main()
            {
              int num = 10;
              int sum = num+::num;}
      第二个num就是调用的全局的, ::前面没加东西就是指全局空间,加了的话就是指调用的对应命名空间里面的函数!
      printf是C语言函数,C++中是std::cout<<num;(后面没有endl也可以)。他后面可以接不同类型的数据!
      一个变量非常重要的还有生命周期,C语言对生命周期控制很弱,命名空间也相当于作用域。

    new&delete:

    C语言中,如果在堆上面来操作的时候,使用的是两个函数:malloc/free,C++中添加了new/delete。

    eg:
    int main()
    {
      int *pNum = new int(100);//分配一个int类型,并将其值设置成100.
      std::cout<<*pNum;
      int *pArray = new int[10];//new数组
      delete  pNum;
      delete[] pArray;
      return 0;}

    new/delete是一个运算符,不是一个函数

    Overloaded:

    重载:

      函数名可以相同,只要里面参数类型,或者类型的顺序,个数不同就不会出现函数重定义的错误,调用的时候编译器会自动判断调用哪个函数。如果函数相同,参数也相同,就会出现重定义错误。调用的时候看起来是一个函数,但实际上是多个不同的函数,也放在不同的空间。
      cout也是函数重载来做的!
      编译后这些函数是不同的,放在不同的内存空间,编译器做一一匹配,编译器会保存符号表,他通过记录了函数里面的参数类型,然后进行匹配就可以得到对应的函数。
    例如:
        统一把MyCout()记录成MyCout@char()、MyCout@int()……在后面加。通过命名粉碎的机制把每个函数编的不同来实现的。

      命名粉碎后,在自己的工程下调用没问题,但别人调用的时候就不知道具体的函数名,可用加上extern "C",不让其命名粉碎,以C语言的编译方式编译。

      两个函数完全一样,但返回值不同的时候,不可以构成重载!重载只与函数名和参数有关,实际的还会加上类,命名空间等信息进去,以后会讲,这里不深究!

    展开全文
  • 头文件

    2016-11-06 22:20:57
    使用函数的一大好处就是可以重用,为了使一个函数能够在其他程序中使用,我们需要将函数放在一个分离的文件中,这种文件称为头文件。习惯上,头文件以.h为扩展名。在程序中使用预处理命令#include包含头文件,以便...

    使用函数的一大好处就是可以重用,为了使一个函数能够在其他程序中使用,我们需要将函数放在一个分离的文件中,这种文件称为头文件。习惯上,头文件以.h为扩展名。在程序中使用预处理命令#include包含头文件,以便重用在头文件中定义的函数。
    eg:mylib.h

    bool isEven(int number)
    {
        return(number%2==0);
    }

    Usemylib.cpp

    #include<iostream>
    #include "mylib.h"
    using namespace std;
    
    int main()
    {
        cout<<isEven(4)<<endl;
        cout<<isEven(5)<<endl;
        return 0;
    }

    程序输出结果如下:

    1
    0

    此程序包含了两个头文件iostream和Mylib.h。
    用户定义的头文件必须用一对双引号将文件名括起来,而标准头文件则应使用一对<>将文件名括起来。

    展开全文
  • time: 2010-12-13 10:14:0#ifndef __cplusplus#define true 1#define false 0typedef int bool;#endif

    time: 2010-12-13 10:14:0
    <-------主题:在LameWrapper的头文件中添加了bool的定义------->
    #ifndef __cplusplus
    #define true 1
    #define false 0
    typedef int bool;
    #endif

    展开全文
  • c语言中 bool 这个声明在哪个头文件里?

    万次阅读 多人点赞 2012-03-12 11:11:55
    stdbool.h
    stdbool.h
    
    展开全文
  • 头文件stdbool.h

    2020-07-09 17:00:44
    编译器不支持2113c99标准,5261_Bool是在c99标准以后才有的。解决 Dve c++或 vc6++不...将头文件下载下来的头文件放在编译器头文件安装位置可以。也可以放在编写保存文件夹中。 在程序中输入#include <stdbool.h> 即可
  • 注意:使用布尔型定义需要头文件 stdbool.h,本头文件在 C99 标准中引入。 1. 内存占用 从理论上讲,布尔型数据只有 1 和 0 两种可能,所以占用应该是 1 bit 也就是 1/8 个字节,但是实际在 C 语言中的占用达到...
  • bool

    2021-04-13 22:30:52
    头文件使用#include; VS2012中不完全支持C99标准,不能引入#include<stdbool.h>。文件后面有.cpp可以直接使用bool类型;也可以自己构造。 在C++中,把bool当做一种基本的数据类型,既然是数据类型,那么就可以...
  • _Bool,BOOL,bool的区别~

    2017-03-01 20:35:47
    boolBOOL 和 _Bool 的区别 】 bool 类型在 C++ 中以关键字的形式被支持,表示布尔类型,其对应变量的值只有...在头文件 中定义为 typedef long BOOLBOOL 类型的长度视实际环境来定,一般可认为是 4 个字节。
  • _Boolbool

    2017-10-24 14:56:54
    在c语言中,一直用int来表示真/假值。 C99针对这种类型的变量新增了_Bool变量 C99提供了stdbool.h头文件,该头文件bool成为_Bool的别名,而且把true和false分别定义为1和0的符号常量。
  • 一、_Bool数据类型 C99规定_Bool用于表示真(1)和假(0) 如果把非零数赋值给_Bool,将其视为1 不过,不是所有的编译器和环境都识别_...头文件bool成为_Bool的别名,而且还定义了true和false关键字,这两个关键字...
  • C99的各类头文件

    千次阅读 2017-05-08 16:50:25
    1、bool头文件stdbool.h下有定义 例: #include int main(void) {  bool temp = true;  return 0; } 2、int8_t、uint8_t、int16_t、uint16_t、int32_t、uint32_t等在头文件inttypes.h有定义,  ...
  • 大数运算头文件

    2014-04-21 11:17:02
    一个简单的大数运算头文件,包含了加减乘除模,逆元,模幂,BOOL
  • 链表头文件

    千次阅读 2018-12-09 21:38:02
    #ifndef _LINKLIST_H_ #define _LINKLIST_H_ ...typedef enum {TRUE , FALSE , ERROR} BOOL; typedef int Data; typedef struct _node { Data data; //数据域 struct _node *next;//指针域 }Node; typedef st...
  • 常用头文件

    2014-05-06 23:19:16
    1.pair #include 2.auto_ptr头文件 #include
  • 头文件模板

    2016-08-11 22:48:07
    /*头文件模板代码*/ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std...
  • 头文件那些事儿

    2014-03-11 10:22:54
    1.头文件中不可以放变量的定义!一般头文件中只是放变量的声明,因为头文件要被其他文件包含#include,如果把定义放在头文件的话,就不能避免多次定义变量。C++不允许多次定义变量,一个程序中对指定变量的定义只有...
  • 查看头文件内容

    2015-12-14 22:21:00
    有时不知道头文件中相关内容,可通过此方法查看文件内容:简单编写程序仅包含此头文件,gcc -E -C 预处理此程序。 gcc -E foo.c -o foo ...bool型数据(true, false)在linux下需要包含头文件stdbool.h。...
  • C++ 头文件

    2015-09-17 08:36:00
    在 C++ 中有一个很重要的概念就是头文件。 之所以在 C++ 中要使用头文件,最主要的原因是 C++ 的同一个项目可能有多个源代码文件,要命的是这些源代码是分别单独编译的。 也就是说,在编译其中一个文件时,编译器...
  • MinGW32默认的C和C++的布尔型表示不同(C++中是bool,C中是_Bool),此头文件可以把它们统一成bool
  • 关于BOOLbool

    千次阅读 2012-11-10 01:05:54
    关于BOOLbool,最基本的描述: 1.类型不同,bool是布尔型,而BOOL就是int型; 2.长度不同,bool是一个字节,而BOOL是int的长度; 3.取值不同,bool只有true和false,而BOOL理论上就可以取所有int值,但是既然是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 138,892
精华内容 55,556
关键字:

bool头文件