通常,C语言中的库头文件(例如stdio.h)不仅包含函数和宏定义的声明,还包含用户定义的数据类型(例如struct、union等)、typedef和全局变量的定义。因此,如果我们在C程序中多次包含同一个头文件,就会导致编译问题,因为头文件的许多结构都会被重新定义。这意味着下面的程序将给出编译错误。
null
#include “stdio.h” #include “stdio.h” #include “stdio.h” int main() { printf (“Whether this statement would be printed?”) return 0; } |
(A) 符合事实的 (B) 错误的 答复: (B) 说明: 在一个程序中多次包含库头文件是可以的。但实际上头文件的内容只包含一次。它的实现方式是由于使用了“#ifndef”、“#define”和“#endif”。这就是为什么建议在用户定义的头文件中也使用这些预处理器宏。有关此问题的示例和用法,请查看此问题的“讨论”。 这个问题的小测验
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END