阅读C语言文件,理论问题

阅读C语言文件,理论问题,c,C,我收到一份C语言的作业,关于在文件中读写。 我在不同的网站上读过不同的代码,也读过它们的解释。但有一个问题仍然没有答案!以下是我在不同网站上找到的通用代码: #include <stdio.h> void main() { FILE *fp; int c; fp = fopen("E:\\maham work\\CAA\\TENLINES.TXT","r"); c = getc(fp) ; while (c!= EOF) { p

我收到一份C语言的作业,关于在文件中读写。 我在不同的网站上读过不同的代码,也读过它们的解释。但有一个问题仍然没有答案!以下是我在不同网站上找到的通用代码:

#include <stdio.h>
void main()
{
   FILE *fp;
   int c;
   fp = fopen("E:\\maham work\\CAA\\TENLINES.TXT","r");
   c = getc(fp) ;
    while (c!= EOF)
     {
       putchar(c);
       c = getc(fp);
     }
    fclose(fp);
 }
在这里,c如何能够一个字符一个字符地读取文件??没有增量运算符。。。指针“fp”是否有助于读取代码

最后,为什么是
putchar(c)用于打印?为什么不使用printf(“%C”,C)

getc()
返回文件句柄中当前位置字节的整数值,然后将该位置前进一个字节


putchar()

  • C++参考
  • 教程要点
  • 维基百科

  • 引用参考文档(,但在C中可能非常类似)

    Get character from stream返回指定流的内部文件位置指示符当前指向的字符。然后,内部文件位置指示器前进到下一个字符

    如果调用时流位于文件末尾,则函数返回EOF并设置流的文件末尾指示符(feof)

    如果发生读取错误,函数将返回EOF并设置流的错误指示器(ferror)

    getc和fgetc是等效的,只是getc可以在某些库中作为宏实现。有关直接从stdin读取的类似函数,请参见getchar

    进一步阅读给我们带来了:

    成功时,返回读取的字符(提升为
    int
    值)

    返回类型为
    int
    ,以适应特殊值
    EOF
    ,这表示失败:如果位置指示器位于文件的
    末尾,则函数返回
    EOF
    ,并设置流的EOF指示器(feof)。 如果发生其他读取错误,该函数也会返回
    EOF
    ,但会设置其错误指示器(ferror)


    我们阅读

    此函数用于在文件或错误结束时,将读取为
    无符号字符的字符转换为
    int
    EOF


    等等

    从文件流读取
    字节
    /
    wchar\t


    你看过文档了吗?你是那种打开一件设备并将手册扔进垃圾箱的人吗。那个么想知道为什么你们不能让它工作?我在网上随机阅读。不。。。。我读了整个手册:P
    while (c!= EOF)
    {
       putchar(c);
       c = getc(fp);
    }
    
    int getc ( FILE * stream );