779

1、C语言有预处理器,Java中没有这个概念,其实只是文本替换工具。

2、C的预处理器,即CPP,将在实际编译器中完成处理,所有预处理命令将从#开始。

实例

#include<stdio.h>
#include<time.h>
#include<stdlib.h>

//使用宏延续运算符
#definemessage_for(a,b)\
printf(#a"and"#b":love\n")
//使用粘贴##,把token和n给粘贴为一个标记
#definetokenPaster(n)printf("token"#n"=%d\n",token##n)
//参数化的宏,来定义一个x*x的函数
#definesquare(x)((x)*(x))

intmain(){
//使用字符串常量化运算符
message_for(Carole,Debra);
//粘贴
inttoken34=40;
tokenPaster(34);
//参数化的宏
intj=square(5);
printf("j=%d",j);
return0;

发表回复