• 编译预处理命令define


    #include 包含指令
    将一个源文件嵌入到当前源文件中该点处。
    #include<文件名> 
    按标准方式搜索,文件位于C++系统目录的include子目录下
    #include"文件名"
    首先在当前目录中搜索,若没有,再按标准方式搜索。
    #define 宏定义指令
    定义符号常量,很多情况下已被const定义语句取代。
    定义带参数宏,已被内联函数取代。
    #undef
    删除由#define定义的宏,使之不再起作用。
    1 #define PI 3.14
    2 #undef //取消之前已有的宏定义
    条件编译指令    #if 和 #endif
    #if  常量表达式
     //当“ 常量表达式”非零时编译
         程序正文 
    #endif
    ......
     
    1 #if  0  //如果将0改为1表示要编译
    2 -------------
    3 ------
    4 不编译
    5 ----------
    6 #endif 
    条件编译指令 ——#else
    #if  常量表达式
    //当“ 常量表达式”非零时编译
       程序正文
    #else
    //当“ 常量表达式”为零时编译
       程序正文2
    #endif
     
    #if  !strcmp(char *a,char *b)  //如果为真则编译,否则编译else
    
    #else
    
    #endif
    条件编译指令 ——#elif
    #if 常量表达式1
        程序正文1  //当“ 常量表达式1”非零时编译
    #elif 常量表达式2
        程序正文2  //当“ 常量表达式2”非零时编译
    #else
        程序正文3  //其他情况下编译
    #endif
     -------------------------------------
    #ifdef 标识符
        程序段1
    #else
        程序段2
    #endif
    如果“标识符”经#defined定义过,且未经undef删除,则编译程序段1,否则编译程序段2。
     
    #define PI 3.14
    #ifdef PI   //如果定义了PI,则编译,否则编译else
    
    #else
    
    #endif
    #ifndef 标识符
       程序段1
    #else
       程序段2
    #endif
    如果“标识符”未被定义过,则编译程序段1,否则编译程序段2。
     --------------------------------------------
     
     
     
  • 相关阅读:
    如何免费在 arm 官网上下载合适的手册
    ARM Cortex-A系列处理器性能分类比较
    USB OTG有关协议
    fseek在 fopen 带有'a'模式下不起作用
    Zynq 7000的3种IO
    多核处理器与MP架构
    Vim常用插件命令手册
    剑指 Offer 07
    Leetcode 94
    剑指offer 27
  • 原文地址:https://www.cnblogs.com/defen/p/5312598.html
Copyright © 2020-2023  润新知