Funktion für Textein/ausgabe in Großbuchstaben...
-
Kann mir jemand sagen wie ich mit getnstr() die Texteingabe in Großbuchstaben wandle???Hab es schon mit toupper()versucht hat nicht geklappt...Gibt es noch andere Funktionen oder Umgebungsvariablen in linux wo man eventuell mit system()starten kann?
-
och kinder, dass ist doch nicht wirklich schwer. Lernt doch mal vernünftig C
char foo[12]; memcpy(foo,"Hallo Welt!",12); puts(foo); for(size_t i=0;i<strlen(foo);++i) foo[i]=toupper(foo[i]); puts(foo);
<ups>editiert</ups>
-
Du hast da was Falsch verstanden,aber es liegt wahrscheinlich dran das ich es nicht genau beschrieben hab...Ich will eine Eingabe mit getnstr() einlesen.Die Ausgabe soll in Großschrift erfolgen.Das heißt ich tippe 'a' ein und die Ausgabe ist ohne zeitverzögerung 'A' usw.(stdin 'a',stdout 'A') das was du beschrieben hat ist doch eine ganz normale Ausgabenumwandlung noch dazu etwas umständlich finde ich...
#include <stdio.h> int main(){ printf("Geben Sie einen Text ein *Großschriftumwandlung*"); system("toupper"); }
macht auch eine umwandlung und ist viel kürzer....
-
@kingruedi
funktioniert zwar aber von der performance her niemals strlen in der schleife ständig neu errechnen lassen (es sei den da ändert sich wirklich was)...
-
kingruedi schrieb:
och kinder, dass ist doch nicht wirklich schwer. Lernt doch mal vernünftig C
schreibst du deshalb auf nem stringliteral rum?
@ciro: hä? was willste denn sonst? oder kannste kingruedis umwandlung nicht an dein getnstr() flanschen?
-
ah, jetzt weiß ich, was du willst.
lies mit getch() ein, da haste kein lokales echo, und gib halt aus, was du magst.
getch() kann man in ncruses finden.
-
volkard schrieb:
schreibst du deshalb auf nem stringliteral rum?
*ups* hast mich erwischt.
-
char *foo[12];
memcpy(foo,"Hallo Welt!",12);dafür gibts doch strcpy.. Aber char foo[] = "Hallo"; wäre auch schon nicht mehr konstant.
-
@Kingruedi:Ja ich weiß und dann mit addchr() ausgeben...Das ist mir zu umständlich...Ich schau mal obs da noch ne einfachere Methode gibt.Wär nicht schlecht wenn es im Standart C ein Formatstring für groß u. kleinschreibung geben würde z.b. printf("%g"//für großschreibung usw...
@Volkard:ja das könnte ich schon machen will ich aber nicht bäääähhhhh
-
Ciro schrieb:
@Kingruedi:Ja ich weiß und dann mit addchr() ausgeben...Das ist mir zu umständlich...Ich schau mal obs da noch ne einfachere Methode gibt.Wär nicht schlecht wenn es im stan**** C ein Formatstring für groß u. kleinschreibung geben würde z.b. printf("%g"//für großschreibung usw...
@Volkard:ja das könnte ich schon machen will ich aber nicht bäääähhhhh
uhps...geht natürlich beides an Volkard.
-
DrGreenthumb schrieb:
char *foo[12];
memcpy(foo,"Hallo Welt!",12);dafür gibts doch strcpy.. Aber char foo[] = "Hallo"; wäre auch schon nicht mehr konstant.
jo, aber memcpy geht auch.