正在加载图片...
第9章预处理命令 9.1宏定义 ◆说明 带参的宏定义,在定义时,在字符串中的形式参数外面加 个括号。 ■在宏定义时,在宏名与带参数的括号之间不应加空格,否则 将空格以后的字符都作为替代字符串的一部分。 ◇带参的宏定义与函数的不同 函数调用时,先求出实参表达式的值,然后代入形参。而使 用带参的宏只是进行简单的字符替换 函数调用在程序运行时处理,为形参分配临时的内存单元。 而宏展开是在编译时进行,不分配内存单元,不进行值的传 递处理,也没有"返回值"的概念 函数中的实参和形参都有相应的类型定义。而宏不存在类型 问题,宏名无类型,它的参数也无类型。 ■调用函数只可得到一个返回值,而用宏可以得到几个结果。-6- 第9章 预处理命令 9.1 宏定义 v 说明 带参的宏定义,在定义时,在字符串中的形式参数外面加一 个括号。 在宏定义时,在宏名与带参数的括号之间不应加空格,否则 将空格以后的字符都作为替代字符串的一部分。 v 带参的宏定义与函数的不同 函数调用时,先求出实参表达式的值,然后代入形参。而使 用带参的宏只是进行简单的字符替换。 函数调用在程序运行时处理,为形参分配临时的内存单元。 而宏展开是在编译时进行,不分配内存单元,不进行值的传 递处理,也没有"返回值"的概念。 函数中的实参和形参都有相应的类型定义。而宏不存在类型 问题,宏名无类型,它的参数也无类型。 调用函数只可得到一个返回值,而用宏可以得到几个结果
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有