Comment utiliser strtok()

Je suis en train d'écrire un programme C pour l'étude de l'utilisation de strtok() utilisation. Voici mon code:

#include<stdio.h>
#include<string.h>

main()
{
    char abc[100] = "ls &";
    char * tok;

    tok = strtok(abc, " ");
    while(tok!=NULL)
    {
            printf("%s", tok);
            tok = strtok(NULL, " ");
    }
    printf("\n\n\n\n\n%s", tok);
    return 0;
}

C'est l'impression de la sortie suivante:

ls&




(null)

Mais je veux qu'il print '&' à la deuxième instruction printf. Comment dois-je faire? J'ai besoin de cette partie de mes devoirs de projet. Quelqu'un peut-il m'aider?

Vous en remercie d'avance! 🙂

Votre while boucle continue jusqu'à ce que tok est NULL, droit? Ainsi, dans la deuxième printf déclaration, tok est NULL. Est surprenant?
Ajouter un saut de ligne à la première printf()
Et si vous avez besoin d'aide avec strtok() vous pouvez toujours consulter la documentation.
Oui, c'est l'impression NULL. Comment je fais pour imprimer "& " à la place?
Combien de fois pensez-vous que la boucle s'exécute? Que pensez-vous de l'impression la première fois?

OriginalL'auteur user2201650 | 2013-09-21