第22章 输入和输出

英文原版:P539

C语言的输入/输出库是标准库中最大且最重要的部分。由于输入/输出库很重要,我们将用一整章的篇幅来讨论头文件<stdio.h>,主要存放的是输入/输出函数。

从第2章开始,我们就一直在使用<stdio.h>,对printfscanfputchargetcharputsgets等函数有一定的了解。

这一章不仅会提供更多有关这6个函数的信息,而且会介绍许多新函数,其中大部分跟文件处理有关。值得庆幸的是,大部分新函数跟已经介绍过的函数紧密相关,比如fprintf就是printf的文件版本。

本章的主要内容有:

  • 22.1节讨论流stream的概念、FILE类型、重定向输入和输出、文本文件跟二进制文件之间的区别等基本问题。
  • 22.2节介绍特别为使用文件而设计的函数,比如打开文件、关闭文件等。
  • 22.3节介绍格式化输入/输出函数:printfscanf等。
  • 22.4节介绍一次读写一个字符的函数:getcputc等。
  • 22.5节介绍一次读写一行的函数:getsputs等。
  • 22.6节介绍读写块数据的函数:freadfwrite等。
  • 22.7节展示如何对文件执行随机访问操作。
  • 22.8节描述sprintfsnprintfsscanf等函数,其中这些函数是printfscanf的变体,用于写入和读取一个字符串。

本章忽略了头文件<stdio.h>中的8个函数,

  • 将跟头文件<errno.h>紧密相关的perror函数延后到24.2节讨论。
  • vfprintfvprintfvsprintfvsnprintfvfscanfvscanfvsscanf等依赖va_list类型的函数延后到26.1节讨论。

C89把所有的标准输入/输出函数都放在头文件<stdio.h>中。C99将一些I/O函数声明在头文件<wchar.h>中,该头文件里的函数处理的是宽字符而不是普通字符。

<stdio.h>中读写数据的函数叫做字节I/O函数,在<wchar.h>中读写数据的函数叫做宽字符I/O函数。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 8,782评论 0 2
  • C/C++输入输出流总结 前两天写C++实习作业,突然发现I/O是那么的陌生,打了好长时间的文件都没有打开,今天终...
    LuckTime阅读 5,669评论 0 6
  • 版权声明:本文为 gfson 原创文章,转载请注明出处。注:作者水平有限,文中如有不恰当之处,请予以指正,万分感谢...
    gfson阅读 8,658评论 0 6
  • 数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称...
    朱森阅读 9,553评论 2 13
  • typedef C 语言提供了 typedef 关键字,您可以使用它来为类型取一个新的名字。下面的实例为单字节数字...
    苏州丸子阅读 4,739评论 0 5