Convertir binaire en string (noob) [résolu]

Convertir binaire en string (noob) [résolu] - C++ - Programmation

Marsh Posté le 06-11-2016 à 20:59:02    

Salut
 
Je fais un puzzle facile ("chuck norris" ) sur codingame. C'est mon 4ème, j'en ai "réussi" 3.
 
Je ne sais pas comment faire pour récupérer en string le binaire (caractère par caractère) des caractères d'un string que je dois étudier puis transformer par la suite
 
Le string qu'ils envoient c'est du ASCII en 7 bits
 
Je cherche je cherche... j'en suis là :
 

Code :
  1. #include <iostream>
  2. #include <string>
  3. #include <vector>
  4. #include <algorithm>
  5. #include <sstream>
  6. #include <bitset>
  7. //#include <cmath>
  8. using namespace std;
  9. int main()
  10. {
  11.     string chaine="abcd";
  12.     int valeur(0);
  13.     string binStr;
  14.    
  15. for (int i=0; i<chaine.size(); i++) {
  16.     valeur = chaine[i];  // je récupère la valeur décimale d'un caractère
  17.     cout << valeur << endl;
  18.     binStr = bitset<7>(valeur);  // là j'ai une erreur : no match for operator = . J'ai essayé avec un int au lieu d'un string, pas mieux.
  19.     cout << "bitset" << bitset<7>(valeur) << endl;  // ça fonctionne bien
  20.     cout << "binStr" << binStr << endl << endl;
  21. }
  22. }

Ça m'affiche bien en binaire dans ma console mais j'arrive pas à le récupérer en string, même avec to_string (ils en parlent pourtant chez cppreference.com sur la page de bitset)
 
 

Code :
  1. to_string (bitset<7>(valeur));

Ça ne fonctionne pas non plus
 
 
Bon j'ai plein d'#include, je les laisse un peu quand je bidouille d'un truc à un autre.
 
Merci pour votre aide !  :)
 
 
 
Edit : je viens de trouver apparemment :

Code :
  1. bitset<7>binStr(valeur);


Il a fallu que je fasse ça aussi, après avoir déclaré bibin comme string

Code :
  1. bibin = binStr.to_string();


Message édité par Lt Ripley le 08-11-2016 à 16:37:35
Reply

Marsh Posté le 06-11-2016 à 20:59:02   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed