当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

上海交通大学:《C程序与算法设计》课程教学资源(课件讲稿)Lecture 15 输入输出

资源类别:文库,文档格式:PDF,文档页数:64,文件大小:1.01MB,团购合买
点击下载完整版文档(PDF)

lecture15一输入输出 绳伟光 上海交通大学微纳电子学系 2017年04月28日 SHA ERS

lecture 15 —— 输入输出 绳伟光 上海交通大学微纳电子学系 2017年04月28日

简介 ■C的输入输出库是标准库中非常庞大的一部分 ■标准输入/输出函数大部分分布在头文件中 ,也包括printf,,scanf,,putchar,getchar,puts,和gets等 函数 ■内容 stream、FILE、重定向、文本文件、二进制文件 %基本文件操作函数 必格式化输入输出 ·非格式化数据读写 随机访问文件 ·字符串格式化读写 C99的宽字符输入输出函数分布在,不作介绍 3

简介  C的输入输出库是标准库中非常庞大的一部分  标准输入/输出函数大部分分布在头文件中 ,也包括printf, scanf, putchar, getchar, puts, 和gets等 函数  内容  stream、FILE、重定向、文本文件、二进制文件 基本文件操作函数 格式化输入输出 非格式化数据读写 随机访问文件 字符串格式化读写  C99的宽字符输入输出函数分布在,不作介绍 3

流(Streams) 在C中,流指任何输入源或输出目的地 ■许多小型程序只从一个流(键盘)输入,并输出到另一 个流(屏幕) 大型程序可能需要多个流 流通常指代存储在不同介质上的文件 流也可以指网络端口或打印机等设备 流的访问通过文件指针file pointer)进行,文件指针的 类型为FILE*类型 FILE*类型定义在中 ■系统已预先定了几个标准的流;也可以声明新的流 FILE *fp1,*fp2;

流(Streams)  在C中,流指任何输入源或输出目的地  许多小型程序只从一个流(键盘)输入,并输出到另一 个流(屏幕)  大型程序可能需要多个流  流通常指代存储在不同介质上的文件  流也可以指网络端口或打印机等设备  流的访问通过文件指针file pointer进行,文件指针的 类型为FILE*类型  FILE*类型定义在中  系统已预先定了几个标准的流;也可以声明新的流: FILE *fp1, *fp2; 4

标准流及重定向(Redirection) 提供了三个标准流,可直接使用: File Pointer Stream Default Meaning stdin Standard input Keyboard stdout Standard output Screen stderr Standard error Screen 1上述三个流可直接使用,不用事先打开,用完也无需 关闭 默认情况下,程序以键盘作为标准输入,以屏幕作为 标准输出,但可以通过重定向技术改变默认行为: 输入重定向:demoout.dat,在命令提示符下输入该命令 后,printf将打印到out.dat而不是屏幕

标准流及重定向(Redirection)  提供了三个标准流,可直接使用: File Pointer Stream Default Meaning stdin Standard input Keyboard stdout Standard output Screen stderr Standard error Screen  上述三个流可直接使用,不用事先打开,用完也无需 关闭  默认情况下,程序以键盘作为标准输入,以屏幕作为 标准输出,但可以通过重定向技术改变默认行为: 输入重定向: demo out.dat,在命令提示符下输入该命令 后,printf将打印到out.dat而不是屏幕 5

重定向操作 ■输入重定向和输出重定向也可以组合使用: demo in.dat out.dat ■重定向符号的顺序没有规定,下面两种均可: demo in.dat out.dat demo >out.dat <in.dat ■ 将错误信息写入stderr的好处是:即使stdouti已被重定 向,错误信息也能显示在屏幕上 6

重定向操作  输入重定向和输出重定向也可以组合使用: demo out.dat  ''重定向符号的顺序没有规定,下面两种均可: demo out.dat demo >out.dat <in.dat  将错误信息写入stderr的好处是:即使stdout已被重定 向,错误信息也能显示在屏幕上 6

文本文件s二进制文件 支持两种类型的文件:text文件和 binary.文件 文本文件的内容被解释为字符,比如c语言的 源程序文件就是文本文件 ■ 二进制文件的内容一般不解释为字符,但某些 位的组合仍然可以表达有意义的信息,典型的 可执行文件就是二进制文件,类似于图像、视 频等文件一般也是二进制文件

文本文件 vs 二进制文件  支持两种类型的文件: text文件和 binary文件  文本文件的内容被解释为字符,比如C语言的 源程序文件就是文本文件  二进制文件的内容一般不解释为字符,但某些 位的组合仍然可以表达有意义的信息,典型的 可执行文件就是二进制文件,类似于图像、视 频等文件一般也是二进制文件 7

文本文件的特点 文本文件有两类特殊字符是二进制文件不需要关注的 文本文件一般分割为多个行,每行以特殊的字符表示 换行 Windows:回车(\x0d')后面跟着换行(\x0a) UNIX和新版Mac OS:换行符 老版本Mac OS:回车符 文件结束标记 Nindows:文件结束标记为\x1a'(ctrl-Z),但不是必需的 %Uniⅸ以及其它系统没有文件结束标记 ■二进制文件不对换行符和文件结束标记特殊对待

文本文件的特点  文本文件有两类特殊字符是二进制文件不需要关注的  文本文件一般分割为多个行,每行以特殊的字符表示 换行  Windows: 回车('\x0d')后面跟着换行('\x0a')  UNIX和新版Mac OS: 换行符 老版本Mac OS: 回车符  文件结束标记  Windows: 文件结束标记为'\x1a' (Ctrl-Z),但不是必需的  Unix以及其它系统没有文件结束标记  二进制文件不对换行符和文件结束标记特殊对待 8

文本文件和二进制文件存储的区别 存储信息到文件中,既可以选择文本格式也可 以选择二进制格式 ■存储数字32767为文本格式: 00110011 00110010 00110111 00110110 00110111 3 2 17 ′6 17 存储数字32767为二进制格式: 01111111 11111111 ■二进制格式存储数字一般可节约空间 9

文本文件和二进制文件存储的区别  存储信息到文件中,既可以选择文本格式也可 以选择二进制格式  存储数字32767为文本格式:  存储数字32767为二进制格式:  二进制格式存储数字一般可节约空间 9

文件格式的注意事项 编程访问文件时需考虑文件是文本格式还是二 进制格式 ■ 文件拷贝时以二进制格式拷贝更安全,否则二 进制格式中很可能包含空字符、文件结束符等 ,以文本模式处理碰到空字符、文件结束符会 结束操作 如果不能确定文件格式,以二进制格式访问更 安全 10

文件格式的注意事项  编程访问文件时需考虑文件是文本格式还是二 进制格式  文件拷贝时以二进制格式拷贝更安全,否则二 进制格式中很可能包含空字符、文件结束符等 ,以文本模式处理碰到空字符、文件结束符会 结束操作  如果不能确定文件格式,以二进制格式访问更 安全 10

文件操作 重定向虽然简单,但限制很多 在程序内部,并不知道已被重定向,对重定向的文 件也无法在程序内部控制 必如果需要同时从多个文件读或者写,重定向不可行 ■提供了很多文件操作函数供选用 11

文件操作  重定向虽然简单,但限制很多 在程序内部,并不知道已被重定向,对重定向的文 件也无法在程序内部控制 如果需要同时从多个文件读或者写,重定向不可行  提供了很多文件操作函数供选用 11

点击下载完整版文档(PDF)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共64页,可试读20页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有