一、关于#和##
1.#:
最常见的是 #不会替换参数,只替换其所对应的字符
把宏参数变成一个字符串;
2.##:
把两个宏参数连接到一起(只能两个)
示例:
输出结果:
二、实用小知识
#空指令,无任何效果
#include包含一个源代码文件
#define定义宏
#undef取消已定义的宏
#if如果给定条件为真,则编译下面代码
#ifdef如果宏已经定义,则编译下面代码
#ifndef如果宏没有定义,则编译下面代码
#elif如果前面的#if给定条件不为真,当前条件为真,则编译下面代码
#endif结束一个#if……#else条件编译块
#error停止编译并显示错误信息