* Bertram Scharpf schrieb am 29.Jul.2002:
Ich verstehe nicht, welchen Sinn der String hat:
"no\0",
denn in C wird an einen String _immer_ ein Nullzeichen angefügt.
Nur bei Stringkonstanten wie oben.
Dann stehen da also zwei.
Der Unterschied zwischen `strcmp' und `strncmp' müßte ein Integer-Vergleich sein, also etwa
for (i = 0; c[ i]; ++i)
gegen
for (i = 0; c[ i] && i < n; ++i)
oder vielleicht auch nur
for (i = 0; i < n; ++i)
Glaube nicht, daß da eine forschleife genommen wird. Und auch nicht c[i] oder so sondern *c. etwas solche Konstrukte: while (*a && *b && *a++ == *b++);
Das kostet zwar Prozessorzeit (Subtraktion n - i), aber ich meine nicht soviel, daß es ein Anwender merkt.
Kommt auf die Anwendung an. Wenn das nur einmal gemacht wird, sicherlich nicht. Aber innerhalb eines Sortieralgorithmuses, und das ist nicht unwahrscheinlich, sehr wohl. Bernd -- ROTFL = Rolling On The Floor, Laughing = Auf dem Boden wälzen, lachend. SCNR = Sorry, Could Not Resist = Sorry, Ich konte nicht wiederstehen. AFAIK = As Far As I Know = So weit ich weis|BTW = By The Way = Nebenbei bemerkt IMHO = In My Humble Opinion = meiner bescheidenen Meinung nach |Zufallssig. 9