Hilfe bei cout
-
Moin moin, leider habe ich im Forum keine Antwort für mein Problem gefunden. Kann mir jemand helfen? Wäre sehr denkbar für eine Lösung. Ich schreibe gerade mein erstes C++ Programm. Das Programm läuft in der Linux Konsole auch fehlerfrei, nur in der Windoof Konsole wird das Gradzeichen (°) bei cout nicht richtig angezeigt. Die deutschen Umlaute habe mit
const unsigned char AE = static_cast<unsigned char>(142);
const unsigned char ae = static_cast<unsigned char>(132);
const unsigned char OE = static_cast<unsigned char>(153);
const unsigned char oe = static_cast<unsigned char>(148);
const unsigned char UE = static_cast<unsigned char>(154);
const unsigned char ue = static_cast<unsigned char>(129);
const unsigned char ss = static_cast<unsigned char>(225);eingebunden. Aber wie ich das mit dem Gradzeichen machen muß, weiß ich leider nicht.
Danke für jede Antwort!
-
Nimm 248.
-
Und falls dir noch welche fehlen: Schau in der ASCII Tabelle.
-
Für die Zukunft:
const char AE = 'Ä'; const char ae = 'ä'; const char OE = 'Ö'; [...]
-
Funktioniert!

Vielen Dank für die schnelle Hilfe und die Tips!
Das werde ich gleich mal ändern.
-
Man kann sichs aber auch einfach machen und sich die Zeichen bequem ausgeben lassen. Mach ich immer so, bin zu faul zum suchen

#include <iostream> #include <limits> using namespace std; int main() { unsigned char ch; int wahl; do { cout << "1: Zeichen -> ASCII-Wert\n" << "2: Alles ausgeben\n\nDeine Wahl: "; if(!(cin >> wahl)) { cerr << "Fehler bei der Eingabe!\nNochmal!\n\n"; cin.clear(); cin.ignore(numeric_limits<int>::max(), '\n'); continue; } switch(wahl) { case 1: cout << "Gebe EIN Zeichen ein: "; cin >> ch; cout << ch << " -> " << static_cast<int>(ch) << "\n\n"; break; case 2: for(int i = 0; i <= 255; ++i) { cout << i << ": " << static_cast<char>(i) << "\t"; } cout << "\n"; break; default: cout << "Zahl > 2 oder Zahl < 1!\n\n"; } } while(true); }