以前写三子棋、扫雷的时候用过多个C文件,定义初始化棋盘和显示棋盘的函数与调用这些函数的C文件不一,所以就把它们放在.h头文件中以便调用。
当时实在是不明白为什么一个在本C文件定义的函数能通过头文件在另一个头文件中调用,现在也不明白……但是现在会用。
关于这方面的更深层的原理有待继续深究,今天只演示多个C文件怎么通过头文件关联,已经怎么在一个C文件中调用另一个C文件中定义的函数。
我们创建两个源文件,test.c和game.c,再创建一个头文件game.h
在game.c中定义一个函数,并声明game.h
#include <stdio.h>
#include"game.h"
void game()
{
printf("game");
}
在game.h中添加此函数
#pragma once
void game();
在test.c中调用game()函数,并声明game.h
#include "game.h"
int main()
{
game();
return 0;
}
调试可发现函数被成功调用
总而言之,定义函数的.c文件和调用函数的.c文件,都要引用同一个含有被调用的函数的头文件