Zeichen in Binärwert wandeln und wieder zurück ?



  • Hi,

    ich kann soweit ich das verstanden habe ja jedes Zeichen in seine ASCII Form (Zahlenwert) zurückwandeln wie in diesen Beispiel:

    Byte bt;
    
       for(int i=0; i<20; i++)
       {
        bt  = arr[i];
        Memo1->Lines->Add(IntToStr(i) + ". " + arr[i] + "->" + bt);
       }
    

    Das müsste doch heißen lese mir das aktuelle Zeichen ein und wandele es mir in seinen ASCII Code um.

    z.b.

    0. G->71
    1. I->73
    2. F->70
    3. 8->56
    4. 9->57
    5. a->97
    6. ->18
    7. ->2
    8. `->96
    9. ->1
    

    ok, aber wie wandele ich denn nun diese Zahlenwerte dann wieder in Zeichen um ?
    Hat jemand für folgende Sache ein paar Beispiele oder Erklärungen ????

    Danke



  • genauso wie du es schon mit ascii->int machst

    char c='A';
    int i=c;
    cout<<i;
    char c2=i;
    cout<<c2;

    :p



  • peinlich 😉

    dankeschön !!!

    gibt es eigentlich eine möglichkeit und ein zeichen (byte) als bit (10) darzustellen ????



  • Ja, gibt es:

    #include <iostream>
    #include <bitset>
    #include <string>
    
    int main(){
    
    	std::bitset<8> bs;  // ein Object bs von der Klasse Bitset erstellen
                                // die 8 ist die Anzahl der Bits
    
    	bs = 'A';           // einen Wert zuweisen:
    
    	std::cout << bs.to_string();   // die Methode to_string() gibt einen 
                                           // std::string zurück, der dem Binärcode
                                           // entspricht.
    
        return 0;
    
    }
    

    grüße Con@n


Anmelden zum Antworten