比如一个.c文件中有多个重复包含的头文件,那么条件编译#ifndef可以使各个.h头文件仅使用一次,得到最终编译完成的一个.c文件。但是你如果把变量定义放在头文件中,不同的.c文件编译时有可能调用相同的头文件造成变量重复定义。
所以良好的习惯应该是变量定义在.c文件中,变量声明在.h文件中。
为什么用了#ifndef还说我重复定义?
最新推荐文章于 2024-07-14 21:53:06 发布
比如一个.c文件中有多个重复包含的头文件,那么条件编译#ifndef可以使各个.h头文件仅使用一次,得到最终编译完成的一个.c文件。但是你如果把变量定义放在头文件中,不同的.c文件编译时有可能调用相同的头文件造成变量重复定义。
所以良好的习惯应该是变量定义在.c文件中,变量声明在.h文件中。