从来没有使用过fwrite(),所以我不确定我做错了什么。我只是现在就测试它,我想要做的就是试着写一个字符直到文件结束。我正在写的文件是我从老师的网站上下载的。当我检查它的属性时,类型只被列为“文件”。它应该只是一个空的2MB文件,供我们将代码写入(文件系统实验室,如果有人想知道的话)。这里是我的代码:“调试断言失败...表达式:(”C - fwrite()不输出到文件
#include <stdio.h>
#include <string.h>
int main()
{
char c;
FILE *fp;
char testing[2] = {'c'};
fp = fopen("Drive2MB", "rw");
fseek(fp, 0, SEEK_SET); //make sure pointers at beginning of file
while((c=fgetc(fp))!=EOF)
{
fwrite(testing, 1, sizeof(testing), fp);
fseek(fp, 1, SEEK_CUR); //increment pointer 1 byte
}
fclose(fp);
}
当我运行此,错误消息弹出说无效的文件打开方式“ 0),并打印”程序“[3896 ] filesystem.exe:Native'has exit with code 3(0x3)。“
这功课吗? – Asaph 2010-12-06 06:46:41
我希望这是一个关于如何使用文件系统的实验,而不是如何设计它们。因为在尝试设计甚至实现一个文件系统之前,你真的应该知道如何使用文件系统......(而且你的老师认为需要为你提供一个空文件会让我感到恐慌) – 2010-12-06 06:51:31
这不是特别的,但是我将在作业中使用fwrite – Anon 2010-12-06 06:53:07