标签:使用 文件 数据 sp linux ad size 程序 bs
fread从文件流stream 中读取nmemb个元素,写到ptr指向的内存中,每个元素的大小为size个字节。
fwrite从ptr指向的内存中读取nmemb个元素,写到文件流stream中,每个元素size个字节。
所有的文件读写函数都从文件的当前读写点开始读写,读写完以后,当前读写点自动往后移动size*nmemb个字节。
gets()会忽略‘\n‘,如果程序一执行,就按enter的话,字符串中存的就是‘\0‘。遇到错误或到文件结尾,返回NULL。
puts()会把‘\0‘换成\n输出。遇到错误返回EOF。
fgets()返回数组首地址,‘\n‘也存上,再加个‘\0‘,遇到文件结尾返回NULL。遇到错误或到文件结尾,返回NULL。
fputs不会在行尾自动添加换行符。遇到错误返回EOF。
注意:从文件中读字符串,末尾都是会自动添加’\0’d的。
以f开头的将格式化后的字符串写入到文件流stream中,或者从文件流stream中读取格式化后的字符串
以s开头的将格式化后的字符串写入到字符串str中,或者从字符串str中读取格式化后的字符串
对于写函数,返回写的字符个数(不包括‘\0’),遇到错误返回一个负数。
对于读函数,返回匹配的个数。遇到错误或者到达文件结尾,返回EOF。
注意:对于读函数,匹配字符串时会忽略空格,并且会在结尾加’\0’。
read与write函数是Linux系统调用,仅仅用于Linux系统。非缓冲。
针对管道,read的返回值有如下3种情况:
1. 读取正常,返回读到的字符个数
2. 对方写端关闭,read返回0
3. 自己的读端关闭,read出错,返回-1。
注意:用read读数据到数组中时,是不会自动在末尾加’\0 ’的!
标签:使用 文件 数据 sp linux ad size 程序 bs
原文地址:http://www.cnblogs.com/hxjbc/p/3959398.html