一、 内容概述 本文主要介绍c语言中条件编译相关的预编译指令,包括#define、#undef、#ifdef、#ifndef、#if、#elif、#else、#endif、defined。 二、条件编译 条件编译是根据实际定义宏(某类条件)进行代码静态编译的手段。可根据表达式的值或某个特定宏 ...
通常情况,我们想让程序选择性地执行,多会使用分支语句,比如if else 或者switch case 等。但有些时候,可能在程序的运行过程中,某个分支根本不会执行。 比如我们要写一个跨平台项目,要求项目既能在Windows下运行,也能在Linux下运行。这个时候,如果我们使用if else,如下: Windows 有专有的宏 WIN ,Linux 有专有的宏 linux 这段代码存在两个问题: 在 ...
2017-04-18 10:57 0 1471 推荐指数:
一、 内容概述 本文主要介绍c语言中条件编译相关的预编译指令,包括#define、#undef、#ifdef、#ifndef、#if、#elif、#else、#endif、defined。 二、条件编译 条件编译是根据实际定义宏(某类条件)进行代码静态编译的手段。可根据表达式的值或某个特定宏 ...
条件编译中使用的预编译指令 条件编译是根据实际定义宏(某类条件)进行代码静态编译的手段。可根据表达式的值或某个特定宏是否被定义来确定编译条件。 #define 定义一个预处理宏#undef 取消宏的定义#if 编译 ...
1、基本概念 条件编译的行为类似于C语言中的if…else… 条件编译是预编译指示命令,用于控制是否编译某段代码 2、实例分析 条件编译初探 22-1.c 3、条件编译的本质 预编译器根据条件编译指令有选择的删除代码 编译器不知道代码分支 ...
笔记整理: C语言带参数宏定义 宏定义 宏定义的一般形式为:#define 宏名 字符串或者表达式预处理的工作就是替换,就是将宏名替换成相应的字符串与表达式。 宏定义字符串: 该示例中的语句int sum = 20 + N;,N被100代替了 宏定义 ...
在C语言的程序中可包括各种以符号#开头的编译指令,这些指令称为预处理命令。预处理命令属于C语言编译器,而不是C语言的组成部分。通过预处理命令可扩展C语言程序设计的环境。 一.预处理的工作方式 1.1.预处理的功能 在集成开发环境中,编译,链接是同时完成的。其实,C语言编译器在对 ...
typedef是一种特殊的声明方式,不过它与普通声明的含义大不相同。普通声明的主角是“变量”,它或是创建一个新变量或是对外文件变量使用前的声明;而typedef声明的主角则是“类型”,通过这个声明 ...
#是在宏定义中将参数进行字符串化的预处理特征,例如: #include <iostream> using namespace std; #define P(EXP) cout&l ...