cs_helena123
Messages postés22Date d'inscriptionmardi 4 mars 2003StatutMembreDernière intervention25 août 2003
-
25 août 2003 à 21:17
cs_Kaid
Messages postés949Date d'inscriptionmardi 2 octobre 2001StatutMembreDernière intervention 8 juillet 2006
-
25 août 2003 à 23:26
Salut les loulous,
j utilise cette "structure" de champs de bits que l on peut trouver dans la librairie et qui est tres facile a utiliser mais pour laquelle je n arrive pas a lire et copier dans un fichier binaire :
Code:
typedef bitset<16> BitSet; // champs de 16 bits
typedef bitset<32> BitSet2; // champs de 32 bits
on peut les initialiser avec un string
Code:
int main() {
string str16 = ("1001101111100001");
BitSet BIT16(str16);
string str_16 = ("1110000000000001");
BitSet BIT_16(str_16);
maintenant je vais les ecrire dans un fichier :
Code:
FILE * f1 ;
if ((f1=fopen("c://bin.dat","ab")) == NULL)
cout << "erreur d ouverture" << endl;
fwrite(&BIT16,2,1,f1);
fwrite(&BIT_16,2,1,f1);
fclose(f1);
maintenant je vais declarer un champs de 32 bits et je voudrais y recopier les 2 champs de 16 bits que je viens de lire :
Code:
BitSet2 Bit32 ;
FILE *f ;
if ((f=fopen("c://bin.dat","rb")) == NULL)
cout << "erreur de lecture " << endl;
fread(&Bit32,2,2,f);
fclose(f);
et enfin je demande a l ecran de lire les 3 champs pour bien comparer et etre sur que j ai bien copie et lu :
j espere avoir ete clair mais j en peux plus ca fait deux jours que je suis dessus et cela me ralentit a mort, merci aux bonnes ames qui essayeront de m aider.
BisouXXX
ps: j ai deja pense a mettre un pointeur mais je maitrise pas les pointeurs sur structures de ce style. Je ne crois pas que ce soit difficile mais j ai un probleme avec les deferences et les pointeurs