2. 预处理指令

2. 预处理指令

2.1 宏定义。#define指令定义一个宏,#undef指令删除一个宏
2.2 文件包含。#include指令将包含当前文件到程序中。
2.3 条件编译。#if、#ifdef、#ifndef、#elif、#else和#endif,将根据条件包含代码块到程序当中,或将代码块排除在程序外。
预定义指令的规则:
1. 指令以#号打头,并且不是必须定义在程序开始位置(虽然都这样定义)
2. 指令之间可以插入任意空格,例如: #  define     N                          10
3. 指令总是在第一个换行处结束,除非使用\字符续行,例如,下面是cocos2d-x游戏引擎中的一个宏定义代码:
#define CREATE_FUNC(__TYPE__) \
static __TYPE__* create() \
{ \
__TYPE__ *pRet = new __TYPE__(); \
if (pRet && pRet->init()) \
{ \
pRet->autorelease(); \
return pRet; \
} \
else \
{ \
delete pRet; \
pRet = NULL; \
return NULL; \
} \
}
4. 注释可以和指令放在同一行,例如: #define N 15  /* 定义数组大小*/

该博客教程视频地址:http://geek99.com/node/1015

点赞
收藏

评论区

加载中...

相关推荐

并发编程

并发编程笔记本博客根据学习而做的笔记,链接如下一、基本概念1、进程与线程进程程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至CPU,数据加载至内存。在指令运行过程中还需要用到磁盘、网络等设备。进程就是用来加载指令、管理内存、管理IO的。当一个程序被运行,从磁盘加载这个程序的代码至内存,这时就开启了一个进程。进程

C语言入门系列之9.预处理

在之前,已多次使用过以号开头的预处理命令,如包含命令include<stdio.h、宏定义命令definePI3.1415926535等。在源程序中这些命令都放在函数之外,而且一般都放在源文件的前面,它们称为预处理部分。一、无参宏定义1.基本使用无参宏的宏名后不带参数。其定义的一般形式为:cdefine标识符

Java并发(三):重排序

在执行程序时为了提高性能,提高并行度,编译器和处理器常常会对指令做重排序。重排序分三种类型:1.编译器优化的重排序。编译器在不改变单线程程序语义的前提下,可以重新安排语句的执行顺序。2.指令级并行的重排序。现代处理器采用了指令级并行技术(InstructionLevelParallelism,ILP)来将多条指令重叠执行。如果不存在数据依

Java虚拟机(一):JVM简介

JVM简介Java虚拟机(JVM)是由Java虚拟机规范定义的,其上运行的是字节码指令集。这种字节码指令集包含一个字节的操作码(opcode),零至多个操作数(oprand),虚拟机规范明确定义了每种字节码指令完成的功能是什么以及需要多少个操作数。Java虚拟机上运行的class文件,这个文件中包含字节码指令流以及类定义的信息,所以Java虚

Nginx常用配置指令说明

Nginx常用配置指令说明注意:局部作用域的配置指令可覆盖全局作用域的配置指令1、不在http响应头中显示Nginx的版本可用于http{}配置块和server{}配置块server_tokensoff;2、索引文件可用于http{}配置块和server{}配置块indexindex.htmlindex.ph

CPU知识点一览

关于CPU和程序的执行1、程序的运行过程,实际上是程序涉及到的、未涉及到的一大堆的指令的执行过程。当程序要执行的部分被装载到内存后,CPU要从内存中取出指令,然后指令解码(以便知道类型和操作数,简单的理解为CPU要知道这是什么指令),然后执行该指令。再然后取下一个指令、解码、执行,以此类推直到程序退出。2、这个取指、