Bonjour, j'ai créer un fichier affichant des nombres aléatoires, j'aimerai récuperer ces nombres dans un autre fichier et les réafficher, mais les nombres afficher dans la destination ne sont pas les nombres initiaux.
Pouvez vous m'aider?
Merci d'avance.
voici mon code:
partie envoi:
partie réception
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <time.h> #include <dos.h> #include <fcntl.h> #include <io.h> #define maxi 10 int main() { unsigned long *table,i; int clefichier; // Clé fichier - handle en DOS table=(unsigned long*)malloc(maxi * sizeof(unsigned long)); // réservation du bloc for(i=0;i<maxi;i++)*(table+i)=rand()%200; // remplissage random if(clefichier=open("C:\\Users...\\tri.dat",O_CREAT|O_RDWR|O_BINARY)!=-1) { write(clefichier,table,maxi*sizeof(unsigned long)); // écrire le bloc close(clefichier); // fermeture printf("%d",clefichier); for(i=0;i<maxi;i++)printf("%10lu",*(table+i)); // table free(table); // rendre la mémoire return 0; } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 #include <conio.h> #include <time.h> #include <dos.h> #include <fcntl.h> #include <io.h> #define maxi 1000 int comparer (const void*, const void*); // Fonction de comparaison int main() { unsigned long *table,i; int clefichier,triage; table=(unsigned long*)malloc(maxi * sizeof(unsigned long)); if((clefichier=open("C:\\Users...\\tri.dat",O_BINARY|O_RDONLY))!=-1); { triage=read(clefichier,table,maxi*sizeof(unsigned long)); for(i=0;i<maxi;i++) printf("%10lu",*(table+i)); close(clefichier); // fermeture free(table) ; } }
Partager