2017-11-02 2 views
0

Zum Beispiel druckt ‚(Nacht‘ trotz Zeichenüber(), warum geschieht dies?Warum funktioniert meine strtok() nicht spezifisch für()?

char* word = strtok(&c, ",.;()"); 
    while(word!= NULL) 
    { 
    word = strtok(NULL, ",.;()"); 
    printf("%s ", &c); 
    } 
+3

Was ist 'c'? Wenn es sich um ein einzelnes Zeichen handelt, ist die Verwendung von 'strtok()' völlig ungeeignet. –

+0

Was ist 'c'? Warum bearbeitest du '&' auf 'c'? – AnT

Antwort

1

Ihr Code druckt nur &c bei jeder Iteration (was immer das ist). Sie nie word drucken, die Ihr neben Token. Deshalb sollten Sie nie die Ergebnisse Ihrer tokenization zu sehen. Wenn Sie die Token sehen wollen, müssen Sie word drucken, nicht c.

Hinzu kommt, dass es völlig unklar ist, warum Sie & Betreiber bewerben auf Ihre c. Wenn c ist ein String-Zeiger oder ein Char-Array , dass & dort keinen Sinn macht.

Verwandte Themen