我想写,读和打印同一个文件。但当程序执行时,它可以写,但不能读或打印我写的数据。当我执行程序时,它在写入文件后停止工作。我已经验证了文件(penny.txt)在写操作之后包含数据。
我不知道哪里出了问题-我怎样才能读取和打印数据?
我对这件事还不太熟悉,所以在回答时请记住这一点。

#include<stdio.h>

int main()
{
    char ch;
    char penny[50],pen[50];
    FILE *Object;
    Object = fopen("Penny.txt","w+");

    fgets(penny, sizeof penny, stdin);
    fprintf(Object,penny);
    fscanf(Object,"%s",pen);
    printf("%s",pen);
    return 0;
}

最佳答案

#include<stdio.h>

int main()
{
    //char ch;//unused!
    char penny[50],pen[50];
    FILE *Object;
    Object = fopen("Penny.txt","w+");

    fgets(penny, sizeof penny, stdin);
    fprintf(Object,"%s", penny);//it troubled indicator(%) is included
    fflush(Object);//Buffer flush : So that there is no wrote
    rewind(Object);//rewind the position of access to the file
    fscanf(Object,"%s",pen);
    printf("%s",pen);
    return 0;
}

关于c - C文件管理错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17305434/

10-11 03:30