2 Stimmen

Ich verstehe diese Syntax nicht

Warum steht bei dieser Schleife ein Doppelpunkt am Ende?

for(s = string; *s == ' '; s++)
    ;

danke

Bearbeiten * so ist es möglich, dieses Verfahren umzukehren, so dass es am Ende einer Zeichenfolge beginnt und prüft für ein Leerzeichen und sinkt, bis es ein Zeichenachter findet?

0voto

Sie bewirkt, dass die Schleife nichts tut. Es passiert lediglich, dass der Zeiger weitergeschoben wird.

0voto

Paul Stephenson Punkte 63913

Es muss eine Anweisung oder ein Block als "Körper" der for Schleife. Dies wird jedes Mal beim Durchlaufen der Schleife ausgeführt (so lange s immer noch auf ein Leerzeichen verweist).

Ein Semikolon für sich allein ist die leer Anweisung - das heißt, im Schleifenkörper passiert nichts, nur die s++ über die for Schleifenlinie.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X