Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 如何将无元素数组复制到输出文件中,使其包含空数组?_C - Fatal编程技术网

C 如何将无元素数组复制到输出文件中,使其包含空数组?

C 如何将无元素数组复制到输出文件中,使其包含空数组?,c,C,我知道,如果数组中有元素,则可以执行此操作: FILE *ptr; ptr = fopen( bobby.txt , "wb" ); int array[3] = {1,2,3}; fwrite(array, sizeof(int), 3, ptr ); fclose(ptr); 但是,当我们遇到像空数组这样的极端情况时,我们如何将空数组复制到文件中?它看起来像这样吗 FILE *ptr; ptr = fopen( bobby.txt , "wb" ); int array[0] = {};

我知道,如果数组中有元素,则可以执行此操作:

FILE *ptr;
ptr = fopen( bobby.txt , "wb" );
int array[3] = {1,2,3};
fwrite(array, sizeof(int), 3, ptr );
fclose(ptr);
但是,当我们遇到像空数组这样的极端情况时,我们如何将空数组复制到文件中?它看起来像这样吗

FILE *ptr;
ptr = fopen( bobby.txt , "wb" );
int array[0] = {};
fwrite(array, sizeof(int), 0, ptr );
fclose(ptr);
编辑:

如果数组为空,那么这也算是空数组吗?

fopen(bobby.txt,“wb”)

这是错误的

fopen(“bobby.txt”、“wb”)

数组中没有任何内容,您是否尝试不将任何内容复制到文件? 这听起来很矛盾。当数组中没有任何内容时,不要将其写入文件

如果要检查文件是否存在,请检查以下链接


如果数组为空,不要将其写入文件。不要从你的文件中读取它。这假设当您读取数组时,其他内容会告诉您数组的长度。最后一件事,是否可以在我的代码中检查我正在写入的文件是否存在,或者我必须事先知道它是否已经存在?@查看文档可能会帮助您了解调用无法打开命名文件时的预期情况。请尝试
access()
stat()
。为什么不在编写之前添加一个“if”语句?如果数组为空或NULL,只需写一个换行字符“\n”,这样当您再次读取该文件时,您就会知道它代表空数组。