從來沒有使用過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