#include#include //exit(0),退出程序 /// ?<文件的简单操作>? <?要点 ?> /// #1 /// 【fopen_s比fopen 多了溢出检测,更安全一些】 /// fp=fopen("文件名","打开方式"); /// fopen 打开文件成功则返回文件指针赋值给fp,失败的话返回空指针 /// errno_t err; /// err=fopen_s(指针地址, "文件名", "打开方式"); /// fopen_s 打开文件成功返回0给errno_t类型的变量,失败的话则返回非零值 /// /// #2 <初始化字符串数组> /// char fname[50]={0}; /// 在定义字符串数组时将其定义为0,消除字符串没有零终止符的警告。 /// /// #3 <文件的读与写> /// EOF(End Of File)【#define EOF -1】是《文本文件》结束的标志, 在文本文件中字符以ASCII码表示,不可能出现-1. /// 在向文件输入数据时,是先将数据输出到缓冲区,待缓冲区满后再正式输出文件,所以先fclose关闭文件先把缓冲区的文件输出到磁盘文件。 /// int main() { FILE* fp; errno_t err; char ch, fname[50] = { 0 }; //初始化字符串数组为零,消除字符串没有零终止符的警告 int a; printf("请输入要打开或要创建的文件名"); scanf_s("%s",fname,sizeof(fname)); if ((err = fopen_s(&fp, fname, "a+") == 0)) printf("打开文件%s成功", fname); else { printf("打开文件%s失败", fname); exit(0); } //在这里写入字符到文件fname printf("请输入字符"); a=getchar(); ch = getchar(); while (ch != 'n') //接收到回车键后终止循环 { fputc(ch, fp); ch = getchar(); } fclose(fp); //关闭文件,即指针不再指向该文件 //写文件完成后,要关闭文件才能读文件 //重新打开文件 printf("请输入要打开或要创建的文件名"); scanf_s("%s", fname, sizeof(fname)); if ((err = fopen_s(&fp, fname, "a+") == 0)) printf("打开文件%s成功", fname); else { printf("打开文件%s失败", fname); exit(0); } //在这里从指定文件中读取字符 ch = fgetc(fp); while (ch != EOF) { putchar(ch); ch = fgetc(fp); } fclose(fp); return 0; }
新手上路
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)