预处理器的小结
来源:互联网 发布:php ip白名单 编辑:程序博客网 时间:2024/06/02 03:58
1.对程序作预处理前,编译器会对它进行几次翻译处理。。首先把源代码中出现的字符映射到源字符集。
。编译器查找反斜线后紧跟换行符的实例并删除这些实例。
。编译器将文本划分成预处理的预言符号序列和空白字符及注释序列。注意的一点是编译器用一个空白字符代替每一个注释。
2.预处理器不进行计算,它只是按照指令进行文字替换操作。
3.宏常量可以用来指定标准数组的大小并作为const值得初始化值。(以下只限在c中,不限在c++中)
。#define LIMIT 20
。const int LIM=50;
。static int data1[LIMIT];//合法
。static int data2[LIM]; //无效
。const int LIM2=2*LIMIT;//合法
。const int LIM3=2*LIM; //无效
4.在处理主体中的多个空格时,字符型字符串和语言符号类型字符串采用不同的方法。用字符型字符串的观点来看,空格也是主体的一部分;而用语言符号类型字符串的观点看,空格只是分割主体中语言符号的符号。
5.程序运行时,函数调用把参数的值传递给函数。而编译前,宏调用把参数的语言符号传递给程序。
6.在宏中最好不要使用增量或减量运算符。
7.在类函数宏的替换部分中,#符号用作一个预处理运算符,可以把语言符号转换成字符串;##运算符把两个语言符号组合成单个语言符号。
8.头文件stdvar.h提供了创建用户自定义的带可变数量参数的函数的工具。
9.宏与函数之间的选择实际上是时间与空间上的权衡,宏产生内联代码。
0 0
- 预处理器的小结
- 预处理器小结
- 预处理器小结
- 预处理器变量小结
- 预处理命令小结
- C 预处理小结
- 文本预处理小结
- 预处理器的介绍
- 预处理器的工作
- C的预处理器
- c的预处理器
- C语言中《预处理》小结
- C语言--预处理指令小结
- 关于预处理器的学习
- 关于预处理器的学习
- 预处理器的工作方式
- 详解C++的预处理器
- 字符串化的预处理器
- 状态压缩DP-炮兵阵地(POJ 1185)
- ACE 内存管理
- SVN部署(本地)
- redisTemplate 操作
- LINUX下安装ORACLE11GR2
- 预处理器的小结
- 基于ACE_Message_Queue的生产者消费者模式
- 微信开发第一篇,使用Java创建成为开发者的应用
- 频率域上的图像增强
- C++ const 修饰成员函数
- 网络数据的XML解析
- Oracle 10g,11g flashback
- 随机生成一个对称矩阵,并输出。(究极版本,可以每一次都改变矩阵的随机数且不同,采用do while退出条件循环)
- C++ 左值引用与右值引用