fwrite(&RGB_Size * 2, 4, 1, fp);这段代码有什么错
时间: 2023-02-06 17:44:18 浏览: 51
fwrite() 是 C 语言中的一个函数,用于将数据写入文件。它的原型如下:
```
size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);
```
其中:
- ptr 是要写入文件的数据的首地址。
- size 是每个数据单元的大小(以字节为单位)。
- nmemb 是要写入文件的数据单元的个数。
- stream 是要写入数据的文件指针。
fwrite() 函数返回实际写入文件的数据单元个数。如果返回值与 nmemb 不同,则表示发生了错误。
例如,下面的代码用 fwrite() 函数向文件 "test.txt" 中写入 10 个数字 1:
```
#include <stdio.h>
int main(void)
{
int i, data[10] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1};
FILE *fp;
fp = fopen("test.txt", "w");
if (fp == NULL)
{
printf("Error opening file\n");
return 1;
}
if (fwrite(data, sizeof(int), 10, fp) != 10)
{
printf("Error writing to file\n");
return 1;
}
fclose(fp);
return 0;
}
```
这段代码会在文件 "test.txt" 中写入 10 个数字 1(每个数字占 4 个字节)。如果写入成功,fwrite() 函数会返回 10,否则会返回一个小于 10 的数字。