|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Y.H 于 2011-10-4 17:42 编辑
如题:
有一个程序 包含了 main函数 save函数。 在main函数中声明定义了一个结构变量。
而 save函数则不和main函数在同一个文件中。
如main函数所在的文件代码:
main:
- #include <stdio.h>
- #include <stdlib.h>
- #define LEN 4
- struct student //学生数据.
- {
- char name[10];
- int num;
- int age;
- char addr[15];
- }stud[LEN];
- void save (); //把结构中的数据以二进制文件格式写入文件.
- void main()
- {
- int i;
- printf ("input name num age addr : \n\n");
- for (i = 0; i < LEN; i++)
- {
-
- scanf ("%s%d%d%s", stud[i].name, &stud[i].num, &stud[i].age, stud[i].addr);
-
- } //输入4个学生的各个数据.
- save(); //调用save函数把数据写入二进制文件.
- system("pause");
- }
复制代码
save函数:
- #include <stdio.h>
- #include <stdlib.h>
- #define LEN 4
- void save() //把结构中的数据以二进制文件格式写入文件.
- {
- FILE *fp; //声明一个文件结构指针.
- int i;
- if (!(fp = fopen("student-list", "wb"))) //读写建立一个二进制文件,使fp链接这个文件.
- {
- fprintf (stderr, "error\n\n");
- return;
- }
- for (i = 0; i < LEN; i++)
- {
- if (1 != fwrite(&stud[i], sizeof(struct student), 1, fp)) //以数据块的方式写入数据.
- {
- fprintf (stderr, "error\n\n");
- return;
- } //循环写入main函数中的结构变量中的数据
- }
- }
复制代码
主要的问题就是怎么样把这个程序分两个文件写,并正常运行。
我这里的关键问题就是怎么在save函数中引用stud结构变量.
|
|