String in Großbuchstaben konvertieren?
Hallo habe ich eine Frage und zwar wie man einen eingelesenen String in Großbuchstaben konvertiert in C. Ich weiß das das mit toupper geht und das man vorher die Länge des Strings bestimmen muss,aber weiter fehlt mir die Idee. Kann mir jemand einen Ansatz geben?
2 Antworten

ist das wirklich akkurat? Die 0-Terminierung läuft über das [] ?
Dieses char c hängt, es wird nicht verwendet. Mitunter sieht man das Beispiel so:
c=str[i];
putchar (toupper(c));
Erstmal solltest du dir im Klaren sein, dass es in C keine Strings als solches gibt, sondern verkettete Charaktere. Bei sowas bietet sich eine For-Loop an. Die Größe kannst du mit sizeof bestimmen.
Dann jeden Character mit deiner toupper-Funktion zum Großbuchstaben machen. Alternativ im ASCII-Code kucken, was der Offset zwischen Groß- und Kleinbuchstaben ist, und den abziehen.