Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Das Problem ist, das Windows in der Konsole eine andere Codepage verwendet, und zwar die Codepage 850. Windows selbst arbeitet jedoch mit dem ANSI Zeichensatz (Codepage 1252).

Eine Übersicht über die wichtigsten Zeichensätze gibt es hier.

Wenn du nun den Quelltext unter Windows schreibst und in einer printf-Anweisung ein "ö" schreibst, so wird dem Compiler gesagt, das später (nach Codepage 1252) das Zeichen Nr. 246 ausgegeben werden soll. Dieses Zeichen entspricht in der Konsole jedoch nicht mehr dem "ö", sondern nach Codepage 850 dem Zeichen "÷", welches dir dann auch korrekt ausgegeben wird.

Um das Problem in den Griff zu bekommen sollte man wissen, welche Codepage vom System verwendet wird, und muss dann den dezimalen Wert des gewünschten Zeichens in der printf-Anweisung verwenden. Wenn man z.B. "zurück" in der Konsole ausgeben lassen möchte, muss die printf-Anweisung folgendermaßen aussehen:

printf("zur[B][COLOR=Red]%c[/COLOR][/B]ck",129);

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...