Groß in Kleinbuchstaben
-
wie kann ich Groß in Kleinbuchstaben umwandeln??
-
char upper = 'A'; char lower = upper+32;
-
besser: std::tolower
string x = "ABCDEFG"; transform (x.begin(), x.end(), x.begin(), static_cast<int(*)(int)>(tolower)); //oder direkt auf char-arrays char x[] = "HIJKLMN"; use_facet<ctype<char> >(locale()).tolower(x, x+sizeof(x));
-
kann man das auch nicht mit dem ASCII Code lösen ??
-
Klüstür schrieb:
kann man das auch nicht mit dem ASCII Code lösen ??
Klar kann man alles nicht lösen .... auch nicht mit dem ASCII-Code.
Ansonsten hat queerboys Lösung keinerlei Abhängigkeiten zu einem besteimmten Zeichensatz.Gruß,
Simon2.
-
ja, wie mahe schon angeboten hat. ist natürlich auch möglich.
allerdings wird das mit umlauten schonmal nicht funktionieren und ganz portabel, sauber ist das auch nicht.
-
queer_boy schrieb:
static_cast<int(*)(int)>(tolower)Wieso nicht einfach so:
tolower
-
Weil das nicht korrekt wäre. std::tolower ist als int tolower(int c) definiert. char tolower(char c) wird aber eigtl. verlangt.
-
(D)Evil schrieb:
Weil das nicht korrekt wäre. std::tolower ist als int tolower(int c) definiert. char tolower(char c) wird aber eigtl. verlangt.
Verlangt wird gar nichts. Ob da im Parameter char oder int steht ist auch egal. Das Problem kommt anscheinend von viel weiter. Bissl Suche in comp.lang.c++ ergab kurz gesagt das hier: http://www.c-plusplus.net/forum/viewtopic-var-p-is-831876.html#831876
:xmas1: