Fichier binaire

Kywalh Messages postés 37 Date d'inscription dimanche 22 octobre 2000 Statut Membre Dernière intervention 25 septembre 2009 - 24 mars 2003 à 18:35
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 24 mars 2003 à 19:58
Salut,
comment fait on pour ecrire un tableau de nombres en binaires de 2 colonnes
dans un fichier en ayant la meme disposition (cad 2 colonnes) ???
Du type:
0001 010110110
0100 111101001
...

Merci

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
24 mars 2003 à 19:56
si cest des int, 32 bits + 1 space + \r\n = 35 chars
char buff[36];
DWORD r;
int i;
int nbr = 1500; // exemple
buff[34] = '\r';
buff[35] = '\n';
defaire les bits, c'est simple
char *c = buff;
for(i = 0; i < 28; i++) {
*c-- = (nbr & 1) ? 49: 48;
nbr >>= 1;
}
*c-- = 32;
for(i = 0; i < 4; i++) {
*c-- = (nbr & 1) ? 49: 48;
nbr >>= 1;
}
WriteFile(hfl, buff, 35, &r, 0);

tu mets cela dans une fonction et tu deroules ton tableau, au lieu de nbr exemple, et tu devrais obtenir des lignes de ce genre.

0000 0000000000000000010111011100

BruNews, ciao...
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
24 mars 2003 à 19:58
RECTIF ERRATUM,
au lieu de char *c = buff;
char *c = buff + 33;
sinon badaboum.
excuse j'ai tape cela en direct, alors...
BruNews, ciao...
0
Rejoignez-nous