EsempioCome convertire stringa di valori binari torna a char
NOTA: che io sono solo preoccupato per le lettere. quindi il set di bit 000001 sarebbe a
o A
.
Ho un string
denominato s
con il valore "abc"
. Prendo ogni char
del string
e convertirla in valore binario attraverso l'uso di bitset
.
es
bitset <6> b1 = s[0]; //a
bitset <6> b2 = s[1]; //b
bitset <6> b3 = s[2]; //c
poi voglio mettere i risultati in un array
di strings
. Il nome della matrice è arr
(e ciascuno string
del array
rappresenterà il valore binario di ciascun char
)
es
arr[0] //will hold the value of char 'a' in binary form which is 000001
arr[1] //will hold the value of char 'b' in binary form which is 000010
arr[2] //will hold the value of char 'c' in binary form which is 000011
e il modo converto ogni char
dal string
a binario è
arr[0] = b1.to_string(); //arr[0] is now 000001
arr[1] = b2.to_string(); //arr[1] is now 000010
arr[2] = b3.to_string(); //arr[2] is now 000011
Ora qui giace il mio problema. Come posso convertirli di nuovo in char
?
esempio
//I want each char to take back the each corresponding letter from the binary values
char c1; //How do i make the arr[0] value of 000001 to become 'a' again?
char c2; //Same here
char c3; //And here
Una domanda comune, certo non si poteva trovare? –
Se hai già una rappresentazione di stringa del valore binario e vuoi tornare a 'char', perché non rimuovere semplicemente l'intermediario' bitset' e fare qualcosa come 'static_cast (std :: stoi (arr [i]) + 64) '? Poi di nuovo, non so se hai bisogno del 'bitset' per ulteriori operazioni più avanti nel tuo codice –
Alejandro
Grazie. No, non ne ho bisogno per altro. Funzionerebbe allora senza bitset come hai detto (non posso provarlo questa volta, ma proverò più tardi quando torno a casa). – George