Eingabe: Süden // Windrichtung halt.
Ausgabe: Keine (da anscheinend keine Bedinung erfüllt wurde)
Problem:
Der Compiler erkennt die Bedingung (Z == "Süden") nicht an.
Wenn ich "S\\x81den" schreibe, kommt Fehlermeldung, das irgendetwas übeschritten wurden (Dezimal größer als 3 oder so).
Wie kann jemand nun "Süden" eingeben und das Programm reagiert darauf ?
Programmieren - alles kontrollieren 4.937 Themen, 20.662 Beiträge
Programmiersprache: C++
Compiler: Borland C++ Compiler 5.0 Professional
Beispiel:
...blabla
else if (mbar > 750 && (direction == "sueden" || direction == "süden" || direction == "Sueden" || direction == "Süden" || direction == "sued" || direction == "süd"
|| direction == "Süd" || direction == "Sued")) {
cout }
// direction soll halt die Richtung sein, N S W oder O. Mehrere Bedingungen habe ich gemacht, damit der Benutzer eine Antwort bekommt, egal was er angibt ;)
PROBLEM: Gibt nun einer "Süden" oder "süden" ein reagiert das Programm nicht.
Das muss irgendein Problem vorliegen, mit den Umlauten. auch die ANSI Schreibweise \x81 ändert daran nichts (Fehlermeldung: Dezimal von 3 überschritten oder so).
Wie muss die Bedingung lauten, damit das Programm bei der
Eingabe von "Süden" oder "süden" reagiert ???
Das ganze habe ich mit strings gemacht, es funktioniert auch alles wie es soll, nur die Umlaute machen Probleme.
GreeTZ Selecta
PS: Ich habe diese Frage bereits sehr ausführlich geschrieben, aber aus unerklärlichen Grund hat der Internet Explorer sie nicht abgeschickt. Da wurde ich sauer (weil das öfters passiert, ohne Grund, hab formatiert, alle Updates und Patches, hab sogar den IE mal repariert, nix ändert sich) und hab deshalb mit dem Firefox ne schnelle Antwort hingeknallt.
Werde diesen, wenn er in der nächsten Version rauskommt, nur noch benutzen.