有关一道宏定义的题的疑问
大家好,我在看这道题时有个疑问,用/*...*/表出,请高手指教
//分析宏定义的输出格式
#include <Stdio.h>
#define NL putchar('\n')
#define PR(format,value) printf("value=%format\t",(value))
#define PRINT1(f,x1) PR(f,x1);NL
#define PRINT2(f,x1,x2) PR(f,x1);PRINT1(f,x2)
void main()
{
float x=5.0,x1=3.0,x2=8.0;
//char d='f';
PR(d,x);/*我已经将上面那行注释了,d就没有定义过了,但为什么还能正常运行,我又把d换成其它字母,依然可以运行*/
PRINT1(d,x);
PRINT2(d,x1,x2);
}
//在宏替换时对字符串中的字符不与替换,保留原状
...全文



