Char inhalt als Binär in anderen Char schreiben
-
Hallo, ich habe ein char Text[256] und möchte den Inhalt als Binär in char Bin[256] schreiben, nur wie macht man das?
Gruß
-
Preisfrage: Was verstehst du unter binär und was unterscheidet diese Speicherform von der "Textform"?
-
Was meinst du mit binär schreiben?
edit: Och, 2 Sekunden zu langsam.
-
So z.B.:
Text[256] --> Blabla
Bin[256] --> 010000100110110001100001011000100110110001100001
-
Das wird nicht passen, da du für jeden char acht Nullen und Einsen brauchst (vorausgesetzt, CHAR_BIT==8), die bei dem was du dir vorstellst ja auch wieder chars sind. Also brauchst du 256*8 chars.
Ansonsten: Guck dir dies mal zur Einführung an:
http://de.wikipedia.org/wiki/Stellenwertsystem#Konvertierungen
-
Danke für den Hinweis, war ein schlechtes bsp.
Sei:
Text[256];
Bin[2048];Nur weiss ich nicht wie ich aus dem Ascii jetzt die 1en und 0en mache.
-
Da hab ich nen guten Link für dich:
http://de.wikipedia.org/wiki/Stellenwertsystem#Konvertierungen
-
Danke Michael! Aber diese Seite habe ich bereits gelesen und verstanden.. Meine Frage war eigentlich darauf bezogen ob es eine Funktion gibt die das macht?
-
Nicht im Standard.
-
Ok, danke
-
Lokia schrieb:
Meine Frage war eigentlich darauf bezogen ob es eine Funktion gibt die das macht?
Die kannst du dir schnell schreiben
-
Du kannst immer auf die einzelnen Bits direkt zugreifen:
char c = 'a'; for(int i=7;i>=0;--i) cout << ((c>>i) & 1) << " ";
c>>i führt einen Rechtsshift um i Stellen durch, & 1 prüft, ob niederwertigste Bit gesetzt ist.
Jetzt noch eine Schleife drum und fertig ist dein Algorithmus.
-
Vielen dank Vicious Falcon!