C语言关于外部文件调用结构体变量的问题,急求

1、定义一个学生结构体STUD(包括姓名、年龄、成绩(float型))变量,请在程序中通过用户输入并输出结果。数据输入要求在fun1函数中实现,输出在函数fun2中实现。... 1、定义一个学生结构体STUD(包括姓名、年龄、成绩(float型))变量,请在程序中通过用户输入并输出结果。数据输入要求在fun1函数中实现,输出在函数fun2中实现。函数原型如下:void fun1( STUD * ps);
voidfun2( STUD ps);
编写的包含main函数的源程序以ex703.c命名,fun1函数在ex703-1.c中实现,fun2函数在ex703-2.c中实现。
原题中三个文件名的后缀是.cpp
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)+提问者悬赏50(财富值+成长值)
匿名用户
推荐于2018-03-14
展开全部
最终的答案我已经找到:
/******************************************************/
//file: head.h
struct test
{ int i;
char j;
}; // 这里不能定义任何变量,因为头文件被许多文件包含,会出现重复定义
extern struct test *right; // 申明结构体变量 right 在其它文件中定义
/*******************************************************/

//file: use.c
struct test *right; // 在这里将 right 定义为全局变量

//file: other.c
#include "head.h" // 只要将头文件包含进去,任何文件都可以调用 right;

void over()
{ printf("%c",right->j); // 直接调用结构体变量 right 的成员
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
13780038411
2015-04-15 · TA获得超过624个赞
知道小有建树答主
回答量:443
采纳率:50%
帮助的人:364万
展开全部
在-1 -2文件用extern STUD 就行了
更多追问追答
追问
不行啊,这样写还是报错。主函数文件:typedef  struct student{……}STUD;另外两个文件都加上了extern STDU;还是报错,显示结构体不能用。
追答
。。。当然。。。只有声明  没定义怎么能行  对STDU进行定义
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式