宏是编译器在编译代码之前,预处理代码时,用来替换代码的。比如定义 #define MAX_PATH 256 ,编译器在编译代码之前,会把程序中所有的 MAX_PATH 替换成 256 ,和“查找-替换”的功能差不多,只不过这种替换不会反应到文件中,只是编译器自己知道而已。使用宏的好处是显而易见的,当我们要在程序中多处使用同一个常量或代码是,就可以定义成宏,如果这个常或代码要修改,我们只需修改宏定义就可以了,不仅非常方便,而且不会因为某个地方没修改而造成程序运行出错。