C——文件写字符读字符比对输出

Posted kasami_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C——文件写字符读字符比对输出相关的知识,希望对你有一定的参考价值。

昨天有两个学妹找我给她们敲这个作业,我在网上没看到有现成的答案,索性我就放上来好了。

作业题目:从键盘输入1个15个字符的字符串写到文件data.txt中,程序执行后打开试题文件夹下的文件data.txt,看下文件内容是否是输入的字符串。再从该文件读取字符串输出到屏幕上。

#include <stdio.h>
#include <string.h>

char buf1[15] = { 0 };
char buf2[15] = { 0 };
void write(void);
void read(void);
int main()
{
    gets(buf1);
    write();
    read();
    if(!strncmp(buf1, buf2, 15) )
         printf("%s", buf2);
    return 0;
}

void write()
{
    FILE* pf;
    pf = fopen("data.txt", "w");
    if (pf == NULL) printf("Error opening file");
    else
    {
        fputs(buf1, pf);      
        fclose(pf);
    }
}

void read()
{
    FILE* pf;
    pf = fopen("data.txt", "r");
    if (pf == NULL) printf("Error opening file");
    else
    {
        fgets(buf2, 15, pf);
        fclose(pf);
    }
}

如果大家用的是Visual Studio,可能fopen一直报错C4996。
你可以在项目——属性——配置属性——C/C++——预处理器——预处理器定义 里面添加

_CRE_SECURE_NO_DEPRECATE

以上是关于C——文件写字符读字符比对输出的主要内容,如果未能解决你的问题,请参考以下文章

把字符串的增删查改,插入以及删除各种操作封装为一个用c代码写的库,代码怎么写,我写不来求教

c语言读写csv文件问题,输出不出来,用f11看说buf烫,请问是啥问题?

C语言文件操作

C语言文件操作

C语言文件操作

C语言 统计文本文件中出现的次数最多和最少的字符串