zoukankan      html  css  js  c++  java
  • c/c++细节知识整理

    这篇文章总结了部分c/c++琐碎的细节知识。

    目录如下:

    (一)bool类型

    知识点出处较多,无法一一列举,向原作者致敬。

    (一)bool类型

    在c99标准以前,c语言并没有定义bool类型。如果需要使用则一般自己定义如下:

    enum bool{
       false = 0,
       true = 1
    }

    或者

    typedef int bool
    #define false 0
    #define true (!(false))

    c99标准为c语言增加了布尔类型。

    但是由于历史上很多项目都使用了类似上面提到的方法定义了自己的bool,为了避免冲突,c99规定将_BOOL作为关键字来表示布尔类型。能够将_BOOL定为关键字是因为在c99之前规定了_BOOL作为保留关键字,避免了冲突。

    同时c99在标准头文件<stdbool.h>中为_BOOL定义了一个别名(alias)作为方便的替代,这个别名就是bool。如果你的项目中没有自己定义过bool,那么包含了该头文件之后,就可以用bool来表示布尔类型了。

    但是必须注意区分:_BOOL是c语言的关键字(keywords),而bool只是一个别名(alias)。

  • 相关阅读:
    FZU 2150 Fire Game
    POJ 3414 Pots
    POJ 3087 Shuffle'm Up
    POJ 3126 Prime Path
    POJ 1426 Find The Multiple
    POJ 3278 Catch That Cow
    字符数组
    HDU 1238 Substing
    欧几里德和扩展欧几里德详解 以及例题CodeForces 7C
    Codeforces 591B Rebranding
  • 原文地址:https://www.cnblogs.com/ryantu/p/3298648.html
Copyright © 2011-2022 走看看