Schleife über einen String str I verwendet:Verwenden strtok in einer for-Schleife
for (tok = strtok(str, ";"); tok && *tok; tok = strtok(NULL, ";"))
{
//do stuff
}
Ich möchte, wie diese Schleife Werke verstehen. Es scheint mir:
(1) tok = strtok(str, ";"); //initialization of tok with the first token in str
(2) tok = strtok(NULL, ";"); // go to the next token in str? how does this work?
(3) tok && *tok; //this stops the loop when tok =NULL or *tok=NULL
Ich würde mich über Ihre Hilfe freuen!
Sie haben Recht auf alle drei zählt :) – dasblinkenlight
Werfen Sie einen Blick auf die ** Related * * Fragen für weitere Details darüber, wie 'strtok()' funktioniert. Vor allem http://stackoverflow.com/questions/3889992/please-help-in-strtok?rq=1 – Barmar
Der '* tok' Test ist nicht Teil der Standard-strtok Idiom. Es sieht so aus, als würde es früh auf einem leeren Feld anhalten, aber es wird nicht funktionieren, weil strtok leere Felder überspringt. –