预处理命令

C++提供的预处理功能主要有以下3

1、宏定义

2、文件包含

3、条件编译

为了与一般C++语句相区别,这些命令以符号#开头,而且末尾不包含分号

宏定义

#define命令将一个指定的标识符(即宏名)来代表一个字符串。定义宏的作用一般是用一个短的名字代笔一个长的字符串。它的一般形式

#define标识符字符串

C语言中用#define定义符号常量,由于C++已增加了const语句以定义常变量,因此#define在实际上已不多用

#define命令定义带参数的宏定义,一般形式

#define 宏名(参数表) 字符串

#define S(a,b)a*b//定义宏S(矩形面积)ab为宏的参数

“文件包含”处理

是指一个源文件可以将另外一个源文件的全部内容包含进来,即将另外的文件包含到本文件之中。C++提供了#define命令实现“文件包含”的操作。

#include命令中,文件名除了可用尖括号括起来以外,还可以用双撇号括起来。

#include<iostream.h>系统到系统目录中寻找要包含的文件,如果找不到,编译系统就给出出错信息。所谓系统目录是指存放C++系统的目录。

#include"iostream.h"从当前目录中寻找

条件编译

希望程序中某一部分只在满足一定条件时才进行编译,也就是指定对程序中的一部分内容进行编译的条件。如果不满足这个条件,就不编译这部分内容。

(1)#ifdef 标识符

程序段1

#else

程序段2

#endif

作用是当所指定的标识符已经被#define命令定义过,则在程序编译阶段只编译程序段 1,否则编译程序段2#endif用来限定#ifdef的命令范围。其中#else部分也可以没有。

(2)#ifndef标识符

程序段1

#else

程序段2

#endif

作用是若标识符未被定义过,则编译程序段一,否则编译程序段二

(3)#if表达式

程序段1

#else

程序段2

#endif

是当指定的表达式值为真时就编译程序段1,否则编译程序段2。可以事先给定一定条件,使程序在不同的条件下执行不同的功能。

Linux内核代码及解析 0分下载:http://download.youkuaiyun.com/detail/zqiang_55/4392290

bash shell 教程 0分下载:http://download.youkuaiyun.com/detail/zqiang_55/4406949

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值