永发信息网

w+ 不是既可以写入又可以读取吗 为什么结果是可以写入但读出的结果不对

答案:1  悬赏:0  手机版
解决时间 2021-08-17 04:46
  • 提问者网友:浩歌待明月
  • 2021-08-16 12:34

#include<stdio.h>

main()

 {

 FILE *p;

char c,ch;

  p=fopen("d:\\C\\hello.txt","w+");

  if(p==NULL)

    {

  printf("can't open \n");

    exit(1);

     }

else

  {

      printf("input a char:\n");

          c=getchar();

        fputc(c,p);

      ch=fgetc(p);

    putchar(c);

fclose(p)};

}

 

最佳答案
  • 五星知识达人网友:罪歌
  • 2021-08-16 14:10

你是不是想打印刚刚写进去的文件?


我看至少有一个问题:


你需要恢复文件指针的位置到文件开始。使用fseek函数改变文件指针位置,使其指向文件头部。使用ftell函数查看当前指针位置。函数用法请自查。


另外一个可能的问题:


字符还在写入缓存中,还没有写到文件里。


我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯