(1)格式
read: ssize_t read(int fd ,void *buf, size_t count); read用于从文件描述符对应的文件读取数据,调用成功返回读出的字节数;buf为读出数据的缓冲区,count为每次读取的字节数,出错返回-1,EOF返回0。 例如:一个文件大小600字节,每次读取400字节,则第一次读取返回400,第二次读取返回300,并且要注意如果buf为一个数组,每次读取的count最大为sizeof(buf)-1,因为字符串结尾标志为‘\0’,占用一个字节,否则会出现乱码。 fread: size_t fread(void *ptr,size_t size,size_t nmemb,FILE *stream); ptr为指向缓冲区保存或读取的数据。 size为控制记录大小。 nmemb为记录数。 函数返回读取或回写的记录数。 例如: char buf[100]; size_t temp=fread(buf,10,1,p); 这个语句表示,每次读取10个字节到buf里边(10×1),如果读取的字节数少于10个返回0,因此,如果想知道读取文件的具体字节数,需要将上边的语句改为: size_t temp=fread(buf,10,1,p);
(2)代码比较
通过read和fread计算返回的字节数和显示读取的文件内容。
#include
#include
#include
#include
#include
#include
#include
int main(int arg,char *args[]){
int num;
if(arg |