信息安全系统设计基础第九周学习总结
第十章
10.8 标准I/O
这个库提供了打开和关闭文件的函数(fopen和fclose)、读和写字节的函数(fread和fwrite)、读和写字符串的函数(fgets和fputs),以及复杂的格式化的I/O函数(scanf和printf)
每个ANSI C 程序开始时都有三个打开的流stdin、stdout和stderr,分别对应标准输入、标准输出和标准错误。
10.9 综合:我该使用哪些I/O函数
Unix I/O是在操作系统内核中实现的,较高级的RIO和标准I/O函数都是基于UnixI/O实现的。
标准I/O:是磁盘和终端设备I/O之选(推荐终生使用。。。),在网络输入输出时,对流的限制和对套接字的限制有时会互相冲突
l 限制一:输出之后的输入:中间必须插入fflush、fseek、fsetpos或者rewind的调用。
l 限制二:输入之后的输出:中间必须插fseek、fsetpos、rewind
因此在网络套接字上要用健壮的RIO函数
附录A 错误处理
l Unix风格:fork和wait的函数返回值既包括错误代码,又包括有用的结果。
l Posix风格:只用返回值表示成功(0)或者失败(非0)
l DNS风格:失败时返回NULL指针,并设置全局变量h_erron
代码运行结果