微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 对C语言中工程与对应工程文件夹关系的理解

对C语言中工程与对应工程文件夹关系的理解

时间:10-02 整理:3721RD 点击:

[用c语言编译器学习C语言或者用相关开发平台学习单片机、ARM过程中,对新建工程与工程文件夹的自我理解是这样的:文件夹在的作用是为工程提供一个路径,而这种路径分为两种,第1种是预处理时要把指定头文件包含进来(其实就是复制粘贴)所需要的路径,第2种是在目标文件基础上,进一步链接成生成执行文件时所需要的链接路径;
这两种路径分别在以下两种方式中生效:
1、 对于include,在编译相关设定选项卡中指定该文件夹下的要包含进来的头文件路径,如:头文件用include包含的方式,而应在编译器有关选项卡中指定include的路径,这样在预处理时编译器才能正确地找到要包含的文件(其实就是复制粘贴);
2、对于链接,在向工程中添加该文件夹下的.C文件时生效,因为在添加过程需要指定路径的。(特别指出,有的时候.h头文件会在写代码的过程中需要修改,为了方便这种修改,需要把.h头文件加入工程中,例如stm32库中的stm32f10x_conf.h文件)
更多嵌入式,单片机,物联网,ARM,STM32.PCB,LINU联系13722663815

综上所述:对库文件的.h与.c文件,其中.h文件不需要添加工程中,但必需要保证编译器中的有关选项卡中已经设定好的包含.h文件的路径,所以每建个工程都要设定,因为放该工程的文件夹不是上次的文件夹了,另外还可以得知,所有在编译器中的有关选项卡中指定的路径下的.h文件都不需要添加进工程里面;而.c文件(库函数文件)要指定的路经是在添加到工程的过程中实现指定的,故所包含的.h头文件相对应的实现文件,即.c文件都需要添加到工程中去,从而为链接器提供所需的路径。



Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top