String über Tatstatur eingeben?
-
wenn deine Puffer_leeren() funktion mal auf ne '\0' trifft sag ich nur wohoo
-
icke muß kotzen
if(a ='ja')
-
no_c0der schrieb:
wenn deine Puffer_leeren() funktion mal auf ne '\0' trifft sag ich nur wohoo
sollte natürlich statt '\0' ne EOF aka (-1) sein
-
Kittxxx schrieb:
name=malloc(sizeof(name)); fgets(name,sizeof(name),stdin); memset(name,0, sizeof(name)-1);
sizeof macht für Zeiger in diesem Zusammenhang keinen Sinn und ist falsch.
-
Ja das läuft bis jetzt, ich hab leider noch nicht so viel Ahnung von C, aber versuchs eben zu lernen.
Wieso ist das sizeof falsch und wie könnte man das anders machen?
Und was ist anif(a='ja')
falsch? Ich weiß, dass die ja/nein-Abfrage noch nicht so ganz funktiniert.
-
hast das schon mal versucht selbst zu lösen? nein! was gibt sizeof zurück und wieso ist strcmp(x,y) so nicht möglich
-
Vielleicht ein Hinweis zu deinem
if(a='ja')
Du verwendest hier einen falschen Operator. "=" wird für Zuweisungen verwendet, während "==" der Vergleichsoperator ist, den du eigentlich verwenden wolltest.
Die Puffer_leeren kann sicherheitshalber noch erweitert werden:
while (((c = getchar()) != EOF) && (c != '\n'))
Die anderen Fehler wurden schon angesprochen. Lass dich nicht entmutigen! Das wird schon
Viele Grüße,
MaBa
-
MaBa schrieb:
Vielleicht ein Hinweis zu deinem
if(a='ja')
Du verwendest hier einen falschen Operator. "=" wird für Zuweisungen verwendet, während "==" der Vergleichsoperator ist, den du eigentlich verwenden wolltest.
so klappt das in ansi c aber nicht!!!
-
sizeof gibt den Speicherplatz der Variable in Byte zurück und ich kann strcmp nicht verwenden, weil die Größe ja immer gleich ist. Vielleicht bin ich grad auch komplett auf dem Holzweg.
Die ja/nein-Abfrage klappt nicht, aber da überleg ich mir grad ne andre Lösung.
Vielen Dank für die Hinweise.
-
kein plan von c? schrieb:
if(a[0]=='j'&&a[1]=='a')