低级文件输入输出函数和流文件输入输出函数

 (1)流文件输入输出函数通常以f开头,是在低级文件输入输出函数的基础上加上缓存,可以以规格化的方式读取或写入数据,如fscanf,fprintf.

 (2)注意:printf是fprintf的特殊形式,即输出到终端;而scanf是fscanf的特殊形式,即从终端读入,因此它们也是流文件输入输出函数。

 (3)另外,sscanf:从一个字符串(buffer)中规格化读入到内存中若干变量中。

             sprintf:将若干内存变量按规格化方式输出到一个buffer中。

 (4)程序里的(内存里)是若干离散的各种类型的变量,使用printf或fprintf是将若干变量按照一定的规格输出到终端或文件中。

     文件分为两种,一种是ASCII文本文件,存储的全是ASCII码,比如  1 10 100  abc在文件中为1分配一个字节存储1的ASCII码,为10分配两个字节存储1和0的ASCII码,为100分配三字节存储1、0、0的ASCII码;为abc分配三个字节存储a、b、c的ASCII码。printf和fprintf的存储方式就是ASCII码,而显示在终端(shell下或通过vi等编辑器打开ASCII文件)时,经过了一个翻译转换,即从ASCII码到字符的显示转换。使用scanf或fscanf时会将终端或文件里的以ASCII码方式存储的内容按一定规格(如%d)分别存储到程序(内存)里的若干变量中。

 (5)fwrite和fread针对的是二进制文件,同样对于1 10 100 abc,用fwrite写到一个文件时,会为1、10、100分别分配4字节(整数)的空间存储(内容和在内存中的存放内容一样),而为abc则和fprintf一样分配三个字节存储它们的ASCII码(字符只有一种存储方式--ASCII码)

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值