多个C文件都会用到的结构体定义

来源:互联网 发布:网上预约软件 编辑:程序博客网 时间:2024/04/29 20:17
应该分为3个文件,一个头文件存储结构体定义供其它.c文件使用,一个.c文件中定义全局变量,另一个.c文件中声明使用全局变量,并通过函数修改该全局变量a.h //存放结构体定义#ifndef _A_H#define _A_H 1struct motor{ INT16S goal_speed;// INT16S current_speed;//};#endifdef.c //文件用来定义全局变量(注意不是声明,定义是要分配内存的)#include "a.h"struct motor mymotor;//加入其它处理代码 call.c //用来实现操作全局变量的函数#include "a.h"extern struct motor mymotor; //这是引用外部变量的前置声明,否则直接使用单独编译该文件时会提示变量未定义void refresh_status(struct motor *ptr);//状态刷新函数{INT16S i;i=ptr->goal_speed - ptr->current_speed;//这里做减法运算}调用方式

refresh_status(&mymotor);

原文:http://zhidao.baidu.com/link?url=u6gOQwhGos8_GRQi3Q_Cx627UzZVHlZRCJK_sjFGyRz1HDE74IPJynkJMJ_EZwG94PuKlPHOWwF3mShuPRgSo_

0 0
原创粉丝点击