求大神, 关于C语言的问题

#include是将包含文件内容展开到cpp文件中, 那假如我写一个头文件,里面写#include 那么我写多个.h文件形成多重包含的结构,就是.h套.h套.h, 那么每一个头文件里面假如编译是不是就将所有的.h文件一层一层展开再拷贝到.h文件里。

这样是不是重复定义了好多个毫无意义的副本

另外, 大神有没有经典的数据结构源码推荐下, 简洁易懂的, 子函数只用返回值判断真假,不写printf()的

 是的,因此我们一般用 #ifndef/#define/#endif避免重复包含

https://zhidao.baidu.com/question/305912353987979884.html

#ifndef xxxx

#define xxxx
...
#endif
一般头文件会用这种方式防止重复引用