链表中链头是否可以作为全局变量?

maoguobao1 2010-12-17 04:10:58
struct student //学生结构体
{
int number;
char name[20];
int age;
};

struct Class
{
int classNum; //班号
char className[20]; //班名
struct student stud[50];//一个班最多只能有50个学生
struct Class *next;
}*Link; // 这里定义Link作为全局变量,即链头。,

如读取文件函数:
int read(struct Class *Link) /*如果我上面定义了Link作为全局变量,是不是在这里就不用设这个形参用来传链头了,--------------------------------在其他函数(如删除,添加学生)要操作链表时,也不需要设形参传递链头?*/
{
FILE *fp;
struct Class *p;
p=Link;
if((fp=fopen("studentss.txt","r"))==NULL)
{
printf("文件读取错误!\n");
return 0;
}
while(p!=NULL)
{
fread(p,sizeof(struct Class),1,fp);
P=p->next;
}
}
return 1;
}
...全文
502 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinlin1989 2010-12-17
  • 打赏
  • 举报
回复
为什么全局的安全性就要差些啊?
libinfei8848 2010-12-17
  • 打赏
  • 举报
回复
能不用的就尽量不要用了
sanmucun 2010-12-17
  • 打赏
  • 举报
回复
可以,但要小心
SECADTION1 2010-12-17
  • 打赏
  • 举报
回复
最好不用全局啊,直接用一个指针把结构体传进去就可以了
不过用全局肯定是没问题的
aozhi 2010-12-17
  • 打赏
  • 举报
回复
省不了多少事,没必要使用全局变量。
luciferisnotsatan 2010-12-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 cranium 的回复:]

就你的标题来说,是完全可以的。

全局变量在该文件内都可以被访问到,自然不需要一个参数去传递了。
[/Quote]
+1
但出于安全性考虑的话,能不用全局就不用
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 maoguobao1 的回复:]

我也是不敢确定,好像很少有这样用,所以才发帖询问的
[/Quote]
出于安全性考虑的话,能不用全局就不用咯!如果必须用那也没办法!
maoguobao1 2010-12-17
  • 打赏
  • 举报
回复
我也是不敢确定,好像很少有这样用,所以才发帖询问的
就想叫yoko 2010-12-17
  • 打赏
  • 举报
回复
+1[Quote=引用 1 楼 cranium 的回复:]
就你的标题来说,是完全可以的。

全局变量在该文件内都可以被访问到,自然不需要一个参数去传递了。
[/Quote]
cranium 2010-12-17
  • 打赏
  • 举报
回复
就你的标题来说,是完全可以的。

全局变量在该文件内都可以被访问到,自然不需要一个参数去传递了。

69,381

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧