编译预处理与动态存储分配.pptVIP

  • 6
  • 0
  • 约2.15千字
  • 约 18页
  • 2018-06-21 发布于湖北
  • 举报
编译预处理 宏替换 文件包含 动态存储分配 malloc函数 free函数 calloc函数 1.不带参数的宏定义: 注意 在define?宏名和宏替换文本之间要用空格隔开?宏名不得与程序中的其他名字相同。 例如 #define SIZE 100 编译时,在此命令行之后,预处理程序对源程序中的所有名为SIZE的标识符用100来替换,这个替换过程称为“宏替换”? 1.不带参数的宏定义: 例如 #define PI 3.14 #define ADDPI ( PI +1) #define TWO_ADDPI (2*ADDPI ) 对于表达式: x =TWO_ADDPI /2; 替换后成为: x =( 2*(3.14 +1))/2; 1.不带参数的宏定义: 例如 #define LEAP _YEAR year %4==0\ year %100 ! =0 ||year %400 ==0 ↑ 第一列如果在“\”前或在下一行的开头留有许多空格,则在宏替换时也将加入这些空格? 1.不带参数的宏定义: 2 .带参数的宏定义 例如 #define MU( X, Y) (( X)*( Y)) … a =MU( 5 ,2 ); /*经过宏替换后将成为a =((5)*(2))*/ b =6 /MU( a+3, a ); /*经过宏替换后将成为 a =6 /((

文档评论(0)

1亿VIP精品文档

相关文档