Je n'ai jamais utilisé fwrite(), donc je ne suis pas sûr de ce que je fais de mal. Je ne fais que le tester maintenant et tout ce que je veux faire est d'essayer d'écrire un seul caractère dans un fichier jusqu'à ce qu'il atteigne la fin. Le fichier que j'écris est celui que j'ai téléchargé sur le site Web de mon professeur. Quand j'en vérifie les propriétés, le type est seulement listé comme "fichier". C'est supposé être juste un fichier vide de 2 Mo pour que nous puissions écrire notre code (laboratoire de système de fichiers si quelqu'un se demande). Voici mon code: « Assertion de débogage a échoué ... Expression :(»C - fwrite() ne pas sortir dans le fichier
#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);
}
Quand je lance cela, un message d'erreur apparaît disant fichier non valide en mode ouvert «0) et imprime » Le programme « [3896 ] filesystem.exe: Native 's'est terminé avec le code 3 (0x3). "
Est-ce que ce sont les devoirs? – Asaph
J'espère que c'est un laboratoire sur la façon d'utiliser les systèmes de fichiers par opposition à la façon de les concevoir. Parce que vous devriez vraiment savoir comment utiliser un système de fichiers avant même d'essayer de concevoir ou même d'en implémenter un ... (Et le fait que votre professeur ait ressenti le besoin de vous fournir un fichier vide m'effraie) –
pas spécifiquement, mais je Doivent utiliser fwrite dans un devoir – Anon