fwrite()
被声明为这样。
size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);
但实际写入的字节数只是 size * nmemb。那么为什么不只指定字节数呢?为什么需要同时指定 size 和 nmemb?谢谢。
最佳答案
没有真正的理由。
函数是这样定义的,因为它是;更具体地说,如果在未写入所有元素时出现错误,您无法保证没有写入部分元素或文件指针位于任何特定位置。
我通常只是将元素大小作为 1 传递,然后自己在 count
参数中进行计算。
关于c - 在 `fwrite()` 中同时拥有参数 size 和 nmemb 的目的是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54710750/