Si j'ai bien compris il faut que je fasse une boucle infinie qui va écrire automatiquement quelque chose dans un fichier et quand ce fichier atteindra 260 Go (la mémoire de mon ordinateur) et si ensuite je l'efface, les données seront irrecupérable ?
Est ce qu'avec cette technique (même si ca prendrait plusieurs semaines) on peut encore récupérer quelque chose ?
Au lieu de demander d'entrer une valeur, je vaux que cette valeur valle 1 et quand il a fini, il doit être incrémenté encore et encore jusqu'a 260 000 (toute la méloire du pc).
Pour être plus clair, le code ne pas demander d'entrer une variable mais au lieu de cela au aurait par exemple
une variable x qui aurait pour valeur 1.
Le code fera ce qu'il doit faire (créer une fichier de 1 Mo et le détruire) et lorsqu'il aura fini (35 fois)
il faut que la variable x soit incrémenté (il va créer un fichier de 2 Mo et le détruire).
Lorsqu'il aura fini, la
#include <stdio.h> #include <stdlib.h> #include <math.h> #include <string.h> int main(int argc, char *argv[]) { system("color 9"); int nombre 0, megaO, compteur 0, multiplicateur = 0, tour = 0; printf("\t\t Entrez une quantite d'information en Mo : "); scanf("%d", &nombre); megaO = nombre; // La variable megaO garde la valeur de nombre car nombre change de valeur nombre *= 10500; // On multiplie nombre par 10500 pour que 100 * | valle 1 Mo while (tour < 35) { tour++; FILE* fichier = NULL; fichier = fopen("memo.txt", "w"); while (compteur < nombre) { fputs("||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||", fichier); compteur++; } printf("\n"); printf("\t %d Mo Cree et Supprimee dans la memoire\n\n\n\n", megaO); // On récupère megaO qui n'a pas changé contrairement a nombre printf("\t\t\t\t Tour %d \n", tour); printf("\t\t\t========== Terminee ==========\n\n\t\t "); compteur = 0; fclose(fichier); remove("memo.txt"); } system("PAUSE"); return 0; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question