编译器会对所有.c文件和.h文件进行单独编译。如果都成功了,再将他们链接在一起,生成可执行程序。
求助这句话是对是错,谢谢。
不能 编译链接时会将头文件放到源文件一起编译
编译前,先会把.h文件和.cpp文件合并成一个文件,然后再编译生成.obj文件,多个.obj文件加上链接库,生成可执行程序.exe或者是.dll
C和C++完整教程:https://blog.csdn.net/it_xiangqiang/category_10581430.html
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y
可查看编译后形成的文件,编译器对每个cpp文件单独进行编译形成.o或.obj文件,然后再link成exe,而对于.h,由于#include“xx.h”,所以在预处理,将头文件的代码“复制插入”cpp文件中,编译器不对头文件进行单独的编译
编译器会对所有.c文件和.h文件进行单独编译。如果都成功了,再将他们链接在一起,生成可执行程序。
编译过程是3个步骤:
1.检查每个文件的准确性,单独编译;
2.对相关类库进行连接,生成目标文件obj;
3.最后生成可运行文件exe;