相信很多小伙伴都见过几百甚至上千行代码全部集中在同一个main.c文件中,这时候就会想,如果能够把封装成各个模块化,这样既有利于代码结构的塑造,也有助于bug的及时查找,但是我们在分区的时候,就会有一些变量,既要在main.c中也要在局部的HC-05.c(举例哈)中,HC-05.h文件中就这样简单声明

这时如果按在两个c文件中都#include "HC-05.h",那么会出现如下报错:

multiply defined 即是重复定义的意思

解决方法如下:

我们在HC-05.h文件中这样声明 bluetooth_cmd,如下图

在到HC-05.c文件中声明加赋值,如下图:

这时候你哪里需要这个bluetooth_cmd变量,包含HC-05的头文件就可以了

如下图,我们在main文件中包含一下:

编译也是没有任何问题的:

更多推荐