你的意思是写成#ifndef include “one.h”与写成#ifndef _ONE_H_是一样的?"_"没有特别的含义吗?大小写一样,"."和"_"也不对应,程序能识别吗?还有就是如果#ifndef include “one.h”这么写是可以的,为什么还要写成#ifndef _ONE_H_?
问题有点多,多谢了~
条件编译,就是为了检验.h文件是否重复编译,你所说的#ifndef include "one.h"麻烦且不规范(语法对吗?),直接以文件名命名一个宏名,因为文件名是独一无二的,所以通过条件编译文件名命名的宏,来检验.h文件是否编译了一次。当然你也可以不用文件名命名为宏名,你也可以用合法的标志符也可以,只不过不规范而已。