#define#ifndef#if defined等等都一般用于宏定义相关,不用于头文件名,而宏名一般用大写你说的是头文件里的#ifndef __XXX_H#define __XXX_H头文件内容#endif这种格式吧?这里__XXX_H也是宏,不是头文件名,只不过习惯上把这个宏定义成跟头文件名相似或一样。这个宏主要是用于编译的时候避免重复include同一头文件而出现一些额重复定义/声明的问题。
一般是要大写的,变量一般是小写的。主要是为了便于区别。