问题
由于之前项目做得很少,一直没有注意到这个问题,include一直认为就是直接把include的文件复制过来,并没有去深究里面的原理。但今天做项目时发现如果是直接复制过来,那include的文件里include的其他文件的地址岂不是就要填之前的源代码文件的相对地址了吗?(a引入b,b又要引入c)但这当然不符合常人的思想,毕竟这样工作的话如果另外一个文件也要用到这个头文件地址就乱了。
测试环境
- Windows 10
- Code::Blocks(编译器:MinGW-W64)
测试开始
首先建好一个main.c的文件
#include <stdio.h>
int main()
{
return 0;
}
在main.c文件目录下建一个include文件夹,在include文件夹中再建两个头文件fun1.h和fun2.h
我们先试试如果是直接复制粘贴include的内容的情况,即include相对于源代码的地址
fun1.h
#include "include/fun2.h"
void fun1()
{
}
fun2.h
void fun2()
{
}
我们修改main.c文件,引入fun1.h

最低0.47元/天 解锁文章

1424

被折叠的 条评论
为什么被折叠?



