头文件书写技巧
1、头文件主要作用,提前声明函数,因为在c语言中必须先声明或定义才能使用
2、在使用到.c文件中需要把这个.h文件进行包含格式是#include <h文件>或#include "h文件名"
,但**强烈建议用引号**,尖括号需要是在c语言的系统环境下
3、keil5中编写的c文件需要添加到工程中,.h文件名字需要添加到options for..../c/c++选项卡中Includepath
中
include命令的两种包含方式区别
参考:https://www.cnblogs.com/zjuhaohaoxuexi/p/16221599.html
1. 若引用头文件使用的是绝对路径,则两种方式一样
2. 相对路径一定使用 #include"XX.h" 的形式,且这种方式先搜索源码目录下,然后搜索系统目录
3. #inculde<xx.h>,直接使用的是系统目录,这里的系统目录**不是计算机系统变量**,而是编译环境中或ide中的包含的系统环境
假如在一个名为led.h的文件中写入下面的程序,
//这种定义方式是放置头文件内容的重复定义
#ifndef __LED_H
#define __LED_H
void LED_Init(void); //在.c文件中写函数体
#endif
使用实例
c的源文件和h文件在一个文件夹下
c文件代码:
#include<stdio.h>
#include"title.h" //这里必须是引号
int main(void){
test_print();
return 0;
}
void test_print(void){ //如果前面不能正确引用,主函数调用这个函数时会报错
printf("this is defined in h file\n");
}
不在同一个文件夹中时
//注意windows环境下的路径转义问题
#include"test/title.h" //使用相对路径包含就行
#include"C:/Users/Administrator/Desktop/testc/title.h" //使用绝对路径
c编译的系统路径
使用ide编写c语言
将自己头文件的路径添加到c语言的IDE开发环境中
使用gcc编译c语言
本质是将自己的头文件放入到编译器的系统目录下。目录的查找方式可以在安装的环境下搜索stdio.h文件,这样可以找到被放在那个文件夹里。
第一种方法:将自己写的头文件复制到,gcc编译器情况下
title.h复制到安装gcc路径下:x86_64-w64-mingw32\include
#include<tilte.h>
第二种:将自己写的头文件使用cmd中的mklink放入到编译器路径下
参考:https://blog.csdn.net/qq_52102933/article/details/126792094
::mklink 链接文件放入的位置 实际文件地址路径
::需要注意的是链接的名字和c中导入的头文件名字必须一样
mklink "D:/mingw64/x86_64-w64-mingw32/include/title.h" "C:/Users/Administrator/Desktop/testc/test/title.h"