C语言中怎样调用其他文件定义的结构体 |
您所在的位置:网站首页 › c语言如何在一个函数里调用另一个函数 › C语言中怎样调用其他文件定义的结构体 |
该死的结构体,折腾了哥快两小时!!!在此总结一下。 假设a.h文件定义结构体: struct test { int a; int b; }; 那么要在b.c文件中调用该怎么写呢?需要两步: 1、头文件包含 #include "a.h"2、先定义一个结构体变量(注意是定义,不是声明) struct test c; 2、在b.c文件中声明要调用的结构体变量(注意是声明,声明为全局变量) extern struct test c;3、然后就可以给结构体成员赋值 /*成员赋值*/ c.a = 1; c.b = 2;当然,如果变量定义为结构体指针变量,则变成如下: /*定义*/ struct test *c; /*声明*/ extern struct test *c; /*成员赋值*/ c->a = 1; c->b = 2; 另外还有另一个变种,使用typedef 定义结构体 typedef struct test { int a; int b; }result; /*定义*/ result c; /*声明*/ extern result c; /*成员赋值*/ c.a = 1; c.b = 2; result是一个结构体类型,不是结构体变量,定义变量like this :result y0,y1;y0、y1才属于结构体变量。实际上 result = struct test
|
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |