Bonjour a tous,
je recherche dans le cadre de mon projet a implementer deux methodes afin de convertir le contenu d'une string.
Ma striing peut etre sous deux format:
contenir pour chaque char de ma string soit des '0', soit des '1', et je cherche a diminuer par 8 la taille en faisant un stockage plutot du genre:
string initiale
ascii
0 1 0
bin
00110000 00110001 00110000
et je veux stocker directement en bin
010 (pour connaitre la taille, ce n'est pas un probleme)
Comment faire?
J'ai commence quelquechose du genre:
est ce un bon depart?, cela ne me parait pas tres elegant, mais je suis a court d'idee.
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 char *_tmp_char; int numOfBits =0; std::string _initstr; // string that use more memory std::string final; // reduced memory container std::cin >> _initstr; // get a string like 0101010 : 7bits but use 7bytes numOfBits= _initstr.length(); final.erase(); _tmp_char = &final.at(0); for (var =0; var < _initstr.length(); var++) { if (_initstr.at(var) != '0' && _initstr.at(var) != '1' ) { numOfBits--; std::cout << "error char :"<<_initstr.at(var)<< " at position :"<< var << " is not binary value"<< std::endl; } // assign value to string char else { std::cout << _initstr.at(var) << std::endl; *_tmp_char <<1; <= ici je sais plus comment faire... } }
cordialement
rikau2
Partager