重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
void save(){ /*建立保存文件函数*/
创新互联建站坚实的技术研发基础赢得了行业内的良好口碑,公司成立10多年来,为近1000家企业提供过网站建设、软件开发、搜索引擎优化技术、互联网大数据整合营销服务,多年的技术服务成功经验、众多的客户使我们能懂得更多,做得更好。"让您的网站跑起来"是我们一直追求的目标!
int i;
FILE *fp; /*定义文件型指针*/
system("CLS");
if((fp=fopen("student.txt","wb"))==NULL){ /*打开输出文件*/
printf("不能打开文件!\n");
return; /*终止程序*/
}
for(i=0;in;i++) /*向student文件中写入信息*/ // 这是所谓的上边
if(fwrite(stu[i],sizeof(struct student),1,fp)!=1) // 这里写文件上边有写
// fwrite() 这个函数 写文件 // 你可以百度 fwrite( ) 百科里有介绍
printf("文件写入错误\n");
fclose(fp); /*关闭文件*/
printf("\n\n\n\n\t\t\t学生信息保存成功!\n");
printf("\n\n\n\n\t\t\t按任意键返回菜单!!");
getch();
}
第一个void save();是这个函数的声明,就是告诉系统:在下面的主函数main(){}里面,save()函数可以被调用,实现save()函数可以实现的功能;而下面那个save()就是在main()函数里面,调用save()函数,实现它的功能。这样的作用可以把实现各种功能的函数模块化,方便使用。
可换成
void save()
{
char name[10];
FILE *fp;
int i;
scanf("%s",name)
if((fp=fopen(name,"wb"))==NULL)
{printf("cannot open file\n");
return;}
for(i=0;iMAX;i++)
if(fwrite(user[i],sizeof(struct diary_type),1,fp)!=1)
printf("file write error\n");
fclose(fp);
}
相关概念:
文件: 按一定规则存储在磁盘上的数据集合。
文件名: 能唯一标识某个磁盘文件的字符串。形式: 盘符:/ 路径 / 文件名.扩展名
文本文件:: 数据以其数字字符的ASCII码形式、一个字节一个字节地存储在磁盘上。
二进制文件:数据以二进制形式在存储在磁盘上。
设备文件:输入/输出设备
标准输入文件:键盘
标准输出文件/标准错误输出文件:显示器
文件型指针:C语言是通过名为FILE的结构型指针来管理文件读写的。FILE *变量名
文件的打开和关闭 :文件操作先建立文件与文件指针之间的关系,接着进行文件的读与写。建立文件与文件指针之间的联系的过程是文件的打开。终止这种联系就是文件的关闭
char ch;
ch = getchar () 功能等价于 ch = fgetc(stdin) 功能等价于 scanf("%c",ch) 功能等价于 fscanf(stdin, "%c",ch)
putchar(ch) 功能等价于 printf("%c",ch) 功能等价于 fputc(stdout) 功能等价于 fprintf(stdout, "%c", ch)
这是一个自定义的函数,名为save,没有返回值。一般这样的函数是把定义为全局变量的变量值保存到磁盘上或是直接输出(照函数名save的意思是直接存盘)。所以就没有形式参数表,也没有函数返回值。
例如:
#include
stdio.h
#include
stdlib.h
int
max;
void
save()
{
FILE
*fout
=
fopen("D:\\resault.txt","w");
fprintf(fout,"max=%d",max);
//输出最大值
fclose(fout);
}
int
main()
{int
a,b;
scanf("%d
%d",a,b);
//输入二个整数
max=ab?a:b;
//选出最大值
save();
//保存结果到文件
return
0;
}