这个语句的执行原理是?

来源:百度知道 编辑:UC知道 时间:2024/06/16 23:10:07
while(fread(&xx,sizeof(xx),1,fp)==1)
先判断括号内的条件,可是怎么判断?过程是什么?难道就看看参数是否匹配?

看函数手册啊
函数名: fread
功 能: 从一个流中读数据
用 法: int fread(void *ptr, int size, int nitems, FILE *stream);
参 数:用于接收数据的地址(字符型指针)(ptr)
单个元素的大小(size)
元素个数(nitems)
提供数据的文件指针(stream)
返回值:成功读取的元素个数

读取成功的话 个数不就是1么 不就成立了

fread的返回值是是否读取成功

本句意思是

如果读取成功,则循环

不成功(即到文件末尾),这跳出

fread(&xx,sizeof(xx),1,fp)
这个是一个函数调用啊
函数总有个返回值的吧,然后判断返回值是不是等于一
就这么简单,呵呵~~~

size_t fread(
void *buffer,
size_t size,
size_t count,
FILE *stream
);
返回值是实际读取的长度