学习
实践
活动
专区
工具
TVP
写文章
  • 广告
    关闭

    有奖征文丨玩转 Cloud Studio

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    EOF是什么?

    = EOF) {     putchar (c);   } 很自然地,我就以为,每个文件的结尾处,有一个叫做EOF的特殊字符,读取到这个字符,操作系统就认为文件结束了。 但是,后来我发现,EOF不是特殊字符,而是一个定义在头文件stdio.h的常量,一般等于-1。   #define EOF (-1) 于是,我就困惑了。 如果EOF是一个特殊字符,那么假定每个文本文件的结尾都有一个EOF(也就是-1),还是可以做到的,因为文本对应的ASCII码都是正值,不可能有负值。但是,二进制文件怎么办呢? = EOF) {     do something   } 这样写有一个问题。fgetc()不仅是遇到文件结尾时返回EOF,而且当发生错误时,也会返回EOF。 = EOF) {     putchar(c);   } 但是,标准输入与文件不一样,无法事先知道输入的长度,必须手动输入一个字符,表示到达EOF

    1.2K30

    EOF 与 BOF 之分

    EOF(end of file)——记录当前位置位于记录集集中最后一个记录之后 BOF(before of file)——记录当前位置位于记录集中第一个记录之前     用rs来表示这个记录集,假如记录集里面有 1、2、3、4个数据,BOF表示rs当前的指针是指在记录集的前面,指向的编号是(-1),当指针指向5时,就会发生EOF的情况。     当记录集为空时,就会同时发生BOF和EOF的情况,就是说rs的指针即在上界之外也在下界之外,这样rs的指针无论是指到什么地方都是同时具有bof和eof的属性。     在我们敲学生信息管理系统的时候,在语句中经常出现EOF和BOF的使用       1、If mrc.EOF Then——当前指针在最后一条记录之后       2、If Not mrc.EOF Then And Not mrc.BOF ) Then——指针位于记录集之中,一定有记录       2、If mrc.EOF And mrc.BOF Then ——指针未在记录集之中,没有记录,说明数据库为空

    73620

    【答疑解惑】getchar()与EOF

    = EOF){ putchar(c); } 这一段代码是The C Programming Language(Second Edition)中一个经典的代码,很多初学者在看到这段代码时会有不少疑问,这里做一个简单的总结 当调用getchar函数读取输入时,只有当输入字符为换行符'/n'或文件结束符EOF时,getchar才会停止执行。 这句话的意思比如我们运行上面那段代码时,我们输入的是回车键或者EOF(linux下是按下Ctrl+D,windows下是按下Ctrl+Z)是,getchar才结束,而不是像它的名字一样,输入一个字符getchar getchar的返回值 getchar()的返回值一般情况下是非负 值,但也可能是负值,即返回EOF。这个EOF在函数库里一般定义为-1。 正确的定义方法如下(K&R C中特别提到了这个问题): int c; c = getchar(); 二、EOF总结 在这个实例中,EOF并不是在任何情况下都作为文件结束符的。

    70390

    文件结束符EOF

    >> 关于文件结束符EOF EOF 是 End Of File 的缩写。在C语言中,它是在标准库中定义的一个宏。人们经常误认为 EOF 是从文件中读取的一个字符(牢记)。 其实,EOF 不是一个字符,它被定义为是 int 类型的一个负数(比如 -1)。EOF 也不是文件中实际存在的内容。 '/n'(也可以是文件结束符EOFEOF将在后面讨论)时,getchar才会停止执行,整个程序将会往下执行。 同时,输入是按照文件的方式存取的,那么要结束一个文件的输入就需用到EOF(Enf Of File). 这也就是为什么getchar结束输入退出时要用EOF的原因。 因为getchar函数除了返回终端输入的字符外,在遇到Ctrl+D(Linux下)即文件结束符EOF时,getchar()的返回EOF,这个EOF在函数库里一般定义为-1。

    2.4K10

    C语言中EOF是什么意思?

    相信很多朋友在学习C语言过程中,都看到过EOF的字样,但翻过整本C语言的书,也没有看到有这个函数或者关键字的,岂不是感觉很奇怪?难道学的不细有疏漏吗?当然不是! =EOF) 这玩意啥意思呢?首先scanf你写while里就很奇怪了,初学者表示没见过这么嵌套写的,再加个EOF更离谱了,都让人怀疑这是不是C代码了...... =EOF本身是个逻辑判断,也就是真或者假,所以可以作为条件判断写到while里,那么最主要的问题来了,EOF到底啥玩意? 随便打开一个包含这个头文件的程序,右键即可),然后搜索EOF即可发现答案! 如下: ? ? 怎么样?看到了吧,EOF其实就是-1! 也就是说EOF就是个数字,被定义为-1而已! 为什么这样做呢? ,所以也就有了 #define EOF (-1) 这样的话!

    1.7K50

    【专业技术】C语言EOF如何使用?

    存在问题: 又一次遇到有人问EOF的用法,到底如何来使用那? 解决方案: 这里有一篇文章写的不错,希望对EOF没有理解的同学能有所帮助。 我学习C语言的时候,遇到的一个问题就是EOF。 = EOF) {     putchar (c);   } 很自然地,我就以为,每个文件的结尾处,有一个叫做EOF的特殊字符,读取到这个字符,操作系统就认为文件结束了。 但是,后来我发现,EOF不是特殊字符,而是一个定义在头文件stdio.h的常 量,一般等于-1。   #define EOF (-1) 于是,我就困惑了。 = EOF) {     do something   } 这样写有一个问题。fgetc()不仅是遇到文件结尾时返回EOF,而且当发生错误时,也会返回EOF。 = EOF) {     putchar(c);   } 但是,标准输入与文件不一样,无法事先知道输入的长度,必须手动输入一个字符,表示到达EOF

    1.5K80

    关注

    腾讯云开发者公众号
    10元无门槛代金券
    洞察腾讯核心技术
    剖析业界实践案例
    腾讯云开发者公众号二维码

    相关产品

    • Serverless HTTP 服务

      Serverless HTTP 服务

      Serverless HTTP 基于腾讯云 API 网关平台,为互联网业务提供 0 配置、高可用、弹性扩展的对外 RESTful API 能力,支持 swagger/ openAPI 等协议。便于客户快速上线业务逻辑,通过规范的 API 支持内外系统的集成和连接。

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭

      扫码关注腾讯云开发者

      领取腾讯云代金券