有点代码中会看到以下形式的代码: #ifdef __cplusplus extern "C" {#endif#ifdef __cplusplus}#endif 这些代码是什么意思呢?首先,__cplusplus是cpp中的自定义宏,那么定义了这个宏的话表示这是一段cpp的代码,也就是说,上...
分类:
其他好文 时间:
2015-03-19 12:59:03
阅读次数:
125
#import "MJViewController.h"#define kCount 8 //定义宏,程序中经常使用,方便扩展@interface MJViewController () { UIPageControl *_pageControl;}@end@implementation MJVi....
分类:
其他好文 时间:
2015-03-15 00:29:15
阅读次数:
152
1.宏(macro)1.1定义宏#define macro bodyexample:#define PI 3.14 //object-like macro#define SQUARE(x) ((x)*(x)) //function-like macro1.2预处理器不进行计算,而只进行字符串替换。比...
分类:
其他好文 时间:
2015-03-03 20:30:18
阅读次数:
117
知识点: 1.结构体 struct 2.typedef关键字 3.宏的定义 4.宏与函数的区别 5.文件包含和多文件编译 6.条件编译 ===========================结构体 思考:如果现在希望保存一个学生的信息,姓名,身高,年龄,地址,该如何保存 char name[...
分类:
编程语言 时间:
2015-02-28 00:07:08
阅读次数:
260
宏定义是C提供的三种预处理功能的其中一种,这三种预处理包括:宏定义、文件包含、条件编译。1.不带参数的宏定义:宏定义又称为宏代换、宏替换,简称“宏”。 格式: #define 标识符 字符串 其中的标识符就是所谓的符号常量,也称为“宏名”,字符串可以是常数、表达式、格式串等。 在编译预处...
分类:
其他好文 时间:
2015-01-23 13:03:13
阅读次数:
169
如果你是一名C程序员,你肯定熟悉宏,它们非常的强大,如果正确使用可以让你的工作事半功倍。然后,如果你在定义宏时,很随意没有认真检查,那么它们可能使得你发狂,浪费N多时间。在很多C程序中,你可能看到许多看起来不是那么直接的较为特殊的宏定义。下面就是一个例子:1 #define _set_taks_st...
分类:
其他好文 时间:
2015-01-21 21:53:14
阅读次数:
168
1.不带参数的宏定义:宏定义又称为宏代换、宏替换,简称“宏”。格式:#define 标识符 字符串其中的标识符就是所谓的符号常量,也称为“宏名”。预处理(预编译)工作也叫做宏展开:将宏名替换为字符串。掌握"宏"概念的关键是“换”。一切以换为前提、做任何事情之前先要换,准确理解之前就要“换”。即在对相...
分类:
编程语言 时间:
2015-01-04 22:48:40
阅读次数:
290
含参数的宏与函数的区别?宏替换不占运行时间,只占编译时间;而函数调用则占运行时间(分配单元、保留现场、值传递、返回),所以每次执行都要载入所以执行起来比较慢一些。。?定义宏的时候不要在宏及其参数之间键入空格,因为宏替换的时候会把你不经意打的空格当作宏的一部分进去。?在宏定义中把每个参数都用括号括起来...
分类:
其他好文 时间:
2014-12-31 17:47:12
阅读次数:
175
宏名的命名规范1、全部大写有多个单词中间使用下划线隔开(常用)2、以k开头的驼峰标识(不常用)带参数的宏定义:把出现宏名地方都会把宏名后面小括号中的参数代入到宏后面的表达式中,然后进行替换格式:#define 宏名(参数列表) 表达式注意点:1、参数列表中没有类型 2、宏名与括号之间一定不要加...
分类:
编程语言 时间:
2014-12-27 01:27:05
阅读次数:
223