klein zu groß
-
hi, hab ein prob.
ich will z.b. eine char arry füllen.
char eingabe[11];
und nun will ich alle kleinbuchstaben dort in großbuchstaben umdwandeln.
gibt es da ne nette funktion, oder muss ich da mit forschleife durchlaufen lassen?
-
for schleife!
(ANSI C soweit ich weiss)
-
du könntest beim einlesen schon vergrößern
char eingabe[11]; int i; i = 0; while(i < sizeof(eingabe)-1) { eingabe[i] = toupper(getch()); if(eingabe[i] == '\n') break; i++; } eingabe[i] = 0;
-
@esskar:
die Binäre null bzw '\0' gehört ans ende! und nicht an den anfangund.. ich würde sagen: (eingabe[i]!=13)
13 = enterweil \n ist doch eigendlich "carriage return" UND "new line".
mfG (c)h
-
nö,
du meinst "\r\n"
-
\n bedeutet NEW LINE = neue zeile
aber um zurückzuspringen wird ein \r sprich CARRIAGE RETURN benötigtin textdateien wird zB das \r\n automatisch in ein \n umgewandelt
in binärdateien nicht*g* hab mich gerade selbst überredet
.. \n geht!
mfG (c)h
-
esskar schrieb:
du könntest beim einlesen schon vergrößern
char eingabe[11]; int i; i = 0; while(i < sizeof(eingabe)-1) { eingabe[i] = toupper(getch()); if(eingabe[i] == '\n') break; i++; } eingabe[i] = 0;
sagen wir mal ich lese zuvor mit folgendem code ein:
sscanf(eingabe,"%d %s %d",&tag,&monat,&jahr);
monat ist der gesucht char array.
der user kann als beispiel:JANUuar, JaNuAr etc eintippen, werden jetzt einfach alle umgewandelt??? oder ist das nur wenn alles klein geschrieben ist.
-
jo es funtz, gott sei dank. gut zu wissen das es nich ohne for geht...hoff ich doch. (abgesehn von while etc)
-
ich würde nicht sscanf benutzen.
das ist viel zu buffer-overflow anfällig
-
Es gibt die Funktionen strupr() und strlwr(). Diese sind aber nicht im ANSI-Standard definiert.
Schau mal unter http://www.delorie.com/djgpp/doc/libc/libc_765.html, vielleicht findest du weitere Informationen.
-
wo liegt das Problem???
char eingabe[11]={0}; int i=0; while(eingabe[i]) { eingabe[i]=toupper(eingabe[i]); i++; }
musst halt
#include <stdlib.h>
noch inkludieren!
mfg hohesC
-
ne schleife brauchst trotzdem
mfG (c)h
-
chille07 schrieb:
ne schleife brauchst trotzdem
mfG (c)h
schon.
ist aber sicherer als sscanf und ist auch nicht unnötig.
ein nachträgliches durchlaufen jedoch schon