结构体写在头文件中怎么写,在其它函数文件中怎么引用

比如我定义了一个头文件,里面是结构体文件1.h#include<stido.h>/*这句要写吗?*/typedetstructstudent{inta;intb;stru... 比如 我定义了一个头文件,里面是结构体
文件1.h
#include <stido.h> /*这句要写吗?*/
typedet struct student
{
int a;
int b;
struct student *next;
}STU;
然后在另外一个程序中怎么使用这个文件
比如
function.c
#include <stdio.h>
#include "文件1.h"
STU *head,*p1;/*像这样使用好像不正确*/
.......... /*但是如何使用呢*/
但是STU 是struct student 的别名啊 看到typedef了吗 上面那个应该是 'f' 不是 't'
最下面的那个“冰冰” 那样好像不能引用啊 我在用的时候 出现了很多问题的
展开
 我来答
生活知识小超人
高粉答主

2020-05-21 · 醉心答题,欢迎关注
知道答主
回答量:2078
采纳率:50%
帮助的人:78.9万
展开全部

1、首先新建一个结构体作为参数项目,添加一个struct.c文件,如图所示。

2、包含stdio.h和stdlib.h头文件,如图所示。

3、输入main函数主体及返回值,如图所示。

4、定义一个结构体AAA,如图所示。

5、定义一个add函数,定义结构体,赋值,并且将结构体作为参数传递给add函数,如图所示。

6、最后运行程序,输出计算结果,如图所示就完成了。

东哥zld
推荐于2016-04-17 · 机械自动化爱好者
东哥zld
机械自动化爱好者
采纳数:204 获赞数:17727
毕业不久,正在努力创造自己的骄傲

向TA提问 私信TA
展开全部
既然函数在头文件中作了声明,一般是指全局函数,即其作用域是整个程序空间。若要在另一个头文件中引用该函数,可以通过以下两种方法实现:
(1)使用#include "函数声明所在的头文件名.h"
(2)使用关键字extern 函数声明; 指明这是引用的外部函数。
例如 :函数void windows_display(windows_t window);声明在头文件wins.h中,若要在output.h中引用,则可以:
(1)#include "wins.h"
(2)在output.h中添加该语句extern void windows_display(windows_t window);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
来自美国迷人的阿拉蕾
推荐于2018-02-28 · TA获得超过2896个赞
知道小有建树答主
回答量:338
采纳率:0%
帮助的人:165万
展开全部
你这样用是没有问题的
只不过你把typedef给打错了

首"文件1.h中
#include<stdio,h>可写可不写 如果在头文件中没写那么在 .c 文件中必须要写
文件1.h
#include<stdio.h>
typedef struct student
{
int a;
int b;
struct student *next;
}STU;

function.c

#include"1.h"
STU *head,*p1;
void main()
{
........
}
这样就没有问题了
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sxqinge
2011-01-25 · TA获得超过2397个赞
知道答主
回答量:256
采纳率:0%
帮助的人:171万
展开全部
1.#include <stido.h> /*这句要写吗?*/
不要写,在.cpp里写了就行了;结构体定义应该是放在类外定义。
2.然后在另外一个程序中怎么使用这个文件
在.CPP文件中要用到的地方进行声明:
STU stu;
stu.a = ...;
stu.b = ...;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友af32f9b
2011-01-25 · TA获得超过164个赞
知道答主
回答量:139
采纳率:0%
帮助的人:40.5万
展开全部
student *head,*p1
你应该用结构名来定义对象。
STU只是student结构的一个对象,不能用来定义
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式