C语言fread函数怎么用
时间: 2023-07-08 22:04:45 浏览: 59
`fread()` 是 C 语言库函数之一,用于从文件中读取数据。其函数原型如下:
```c
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
```
其中,各参数的含义为:
- `ptr`:指向读取数据的缓冲区指针。
- `size`:每个数据项的大小(以字节为单位)。
- `nmemb`:要读取的数据项数量。
- `stream`:指向文件的指针。
`fread()` 函数会尝试从指定的文件中读取 `nmemb` 个数据项,每个数据项的大小为 `size` 字节,读取的数据存储在 `ptr` 指向的缓冲区中。函数返回实际读取的数据项数量,如果该值小于 `nmemb`,则表示读取到了文件结尾或发生了错误。
下面是一个简单的使用 `fread()` 函数读取文件的例子:
```c
#include <stdio.h>
int main() {
FILE *fp = fopen("example.txt", "rb");
if (fp == NULL) {
printf("Failed to open file.\n");
return 1;
}
char buffer[1024];
size_t read_count = fread(buffer, sizeof(char), 1024, fp);
printf("Read %zu bytes from file.\n", read_count);
fclose(fp);
return 0;
}
```
在这个例子中,我们首先打开了一个名为 `example.txt` 的文件,然后创建了一个 1024 字节大小的缓冲区 `buffer`,并使用 `fread()` 从文件中读取了 1024 个字符(每个字符占用 1 个字节),最后输出实际读取的字节数。注意,我们在打开文件时使用了 `"rb"` 模式,表示以二进制模式打开文件,这样可以保证在读取二进制数据时不会发生转换。