for(int i=0; satz[i]!='\0'; i++)?
wird die for-schleife so lange ausgeführt bis es zum Zeilenende kommt?
4 Antworten
Das ist noch keine for-Schleife, sondern nur der Schleifenkopf. Das lässt sich jedoch leicht in eine while-Schleife umwandeln, sodass es vielleicht klarer ist
int i=0;
while (satz[i]!='\0') {
// Schleifenkörper
i++;
}
also solange Zeilenende nicht erreicht wurde, geht die schleife ein zeichen weiter?
jo geht das char array bis zum zeichen ende wert . auch wenn das array großer war .
jo geht das char array bis zum zeichen ende wert . auch wenn das array großer war .
da die darstellung im speicher bei einem char array mit zeichen
z.b. char satz[50]
mit weniger als 50 zeichen , dann mit einem \0 abgeschlossen wird ... sonst läuft man in werte die noch nicht bestimmt wurden (im schlechtesten fall)
Ja, die Schleife wird solange ausgeführt, bis eine '\0' gefunden wird, die das Ende der Zeichenkette satz[] anzeigt.
Wenn satz[] eine eingelesen Zeile ist, muss man damit rechnen, dass vor '\0' ein '\n' als Endekennung steht.
Eine Liste mit Zeigern auf Strings wird solange durchlaufen, bis ein Zeiger auf einen Leerstring gefunden wird.
Gut möglich... ist 'ne Weile her, seit ich mit C programmiert habe...
da interpretirst du aber was was so nicht sein muss
char satz[5] = "....";