快捷搜索:   服务器  安全  linux 安全  MYSQL  dedecms

关于文件操作函数EOF

    EOF不是文件中有的。只不过是一个文件操作函数,在文件结尾操作时候返回的错误码。不要认为文件中含有EOF。

    换行和回车是在文件中都有的,分别是/n和/r在UNIX和DOS中的文本中有不同的表达。


    测试代码:

    #include

    /*  count.c  */
    main()
    {
       int i=0;

       while (getchar() != EOF)
           ++i;
       printf("%d\n", i);
    }


    #cc count.c -o count
    #cat a.txt
    a
    bc
    #count5
    #

    运行结果为5,那么最后一行是不是除了包含一个EOF,是不是也有一个换行符?
    #od -c a.txt

    0000000    a  \n   c   d  \n
    0000005

    EOF不是文件中有的。只不过是一个文件操作函数,在文件结尾操作时候返回的错误码。不要认为文件中含有EOF。

    换行和回车是在文件中都有的,分别是/n和/r在UNIX和DOS中的文本中有不同的表达。

    EOF在UNIX中输入是ctrl+d,在win中是ctrl+z。

    也就是说,标准输入/输出在处理文本流时,若取不到字符,即返回错误码EOF,代表文件结束。

顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论