1.#if 是什么?

#if 是条件编译,是编译器编译时最早的编译部分,因此后面跟的语句必须是宏语句才有效。

如果宏语句符合条件,就编译,否则不会编译,也就不会执行。

2.#if 有什么用?

1)注释代码,带条件地注释

2)宏的条件语句

#if 宏语句成立

code

#endif

3.#if 与 if 的区别

if 的语句是后编译的,因此都会编译,根据条件执行,而#if只会执行宏语句的判断。

#if 与 if 的区别相关推荐

  1. RPC 笔记(01)— RPC概念、调用流程、RPC 与 Restful API 区别

    1. 基本概念 PRC 远程过程调用 Remote Procedure Call,其就是一个节点请求另外一个节点提供的服务.当两个物理分离的子系统需要建立逻辑上的关联时,RPC 是牵线搭桥的常见技术手 ...

  2. C++ 笔记(28)— C++ 中 NULL和 nullptr 的区别

    最近看公司代码的时候发现在判断指针是否为空的时候,有的时候用的是 NULL, 有的时候用的是 nullptr 感觉很奇怪,好奇心驱使我查了下两者的区别,发现还是有很多细节需要学习的. 1. NULL ...

  3. gcc 和 g++ 的联系和区别,使用 gcc 编译 c++

    GCC 编译器已经为我们提供了调用它的接口,对于 C 语言或者 C++ 程序,可以通过执行 gcc 或者 g++ 指令来调用 GCC 编译器. 实际使用中我们更习惯使用 gcc 指令编译 C 语言程序 ...

  4. Python2 与 Python3 区别

    Python2.x 与 Python3.x 区别 1. print 函数 Python2 中 print 是语句(statement),Python3 中 print 则变成了函数.在 Python3 ...

  5. Docker 入门系列(1)- 初识容器,镜像、容器、仓库的区别

    Docker 简介 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发 ...

  6. HTTP 协议入门 — (TCP/IP协议族、通信传输流、URI 与 URL 的区别、Cookie 状态管理、HTTP 支持的方法、状态码类别、HTTP 首部字段)

    TCP/IP协议族 在介绍 HTTP 协议之前,我们先对 TCP/IP 协议族有个大概的了解,TCP/IP 协议从上到下主要分为应用层.传输层.网络层和数据链路层,各层的主要功能如下表所示: 协议层 ...

  7. python二进制打开(rb)和文本格式打开(r)什么区别?

    使用 open() 函数以文本格式打开文件和以二进制格式打开文件,唯一的区别是对文件中换行符的处理不同. 在 Windows 系统中,文件中用 "\r\n" 作为行末标识符(即换行 ...

  8. python中__dict__与dir()区别

    前言 Python下一切皆对象,每个对象都有多个属性(attribute),Python对属性有一套统一的管理方案. __dict__与dir()的区别: dir()是一个函数,返回的是list: _ ...

  9. java和C#面向对象的区别

    问题:C#中的构造函数和java的构造函数一样吗? 答: .net的项目中,写实体Entity属性时,经常会为每一个属性写一对get和set方法,在用到这个实体或是一个类时,通过new实例化一个对象, ...

  10. 判别模型和生成模型的区别

    20210703 https://www.zhihu.com/question/20446337 机器学习"判定模型"和"生成模型"有什么区别? 重点 http ...

最新文章

  1. 《DSP using MATLAB》Problem 5.7
  2. oracle怎么调报表,集智数据平台报表如何调用Oracle数据存储过程
  3. nginx限制请求之四:目录进行IP限制
  4. golang中的http服务器
  5. mysql文件说明_MySQL进阶之配置文件说明
  6. LeetCode 128. 最长连续序列(哈希set)
  7. php返回原界面,thinkphp实现登录后返回原界面
  8. 02-linux下 yum安装R环境和Rserve安装
  9. C#操作SQLite数据库
  10. 实例分割小工具labelme转coco
  11. 用ajax获取淘宝关键字接口
  12. Android蓝牙完全学习手册
  13. app抓包工具_安卓APP逆向入门分析——破解某APP登陆请求参数
  14. PS 拖入图片保持原大小
  15. Python 将中文大写数字转为阿拉伯数字
  16. DCHQ + EMC REX-Ray在多个云和虚拟化平台上交付容器数据库服务
  17. 什么是全栈【举例讲解】
  18. 【多线程】java 并发编程中的Condition对象-指定唤醒某个线程
  19. java 日期转换视频_自定义转换器实现日期转换_JavaEE框架(Maven+SpringMvc+Spring+MyBatis)全程实战教程_Java视频-51CTO学院...
  20. 面向对象练习【Python】

热门文章

  1. 关于offer、三方协议、福利等就业常识
  2. 乐2 乐视X520_官方线刷包_救砖包_解账户锁
  3. outlook qr码在哪里_条码生成软件如何批量生成DPM码
  4. ios开发愤怒的小鸟的Lua语言:Wax框架详解
  5. 安徽大学计算机专业毕业论文格式,安徽大学本科毕业论文格式.doc
  6. apn(Access Point Name, 接入点名称)简介
  7. 存储 angularjs
  8. calico源码分析-ipam(2)
  9. 如何制作ANE+Android以及ANE开发中可能遇到的坑
  10. 刚入职的新人如何快速了解公司业务