Lire une chaine de caractere
Résolu
rose_de_sable
Messages postés
11
Statut
Membre
-
rose_de_sable Messages postés 11 Statut Membre -
rose_de_sable Messages postés 11 Statut Membre -
Bonjour,
j'ai entrain de programmer un mini shell sous C.
je doit lire une chaine de caractere (les commandes); j'ai fais gets(chaine) voila ce qu est agffiché:
warning: the `gets' function is dangerous and should not be used.
quand je fait scanf("%s",chaine) il lit que les lettre avant l'espace
par ex:
scanf("%s",chaine);
printf("%s",chaine);
si je fait tp systeme
il m'affiche que tp danc chaine=tp
j'ai pas compris pour quoi
qlqun peut m'aider!!!!!
merci
j'ai entrain de programmer un mini shell sous C.
je doit lire une chaine de caractere (les commandes); j'ai fais gets(chaine) voila ce qu est agffiché:
warning: the `gets' function is dangerous and should not be used.
quand je fait scanf("%s",chaine) il lit que les lettre avant l'espace
par ex:
scanf("%s",chaine);
printf("%s",chaine);
si je fait tp systeme
il m'affiche que tp danc chaine=tp
j'ai pas compris pour quoi
qlqun peut m'aider!!!!!
merci
A voir également:
- Lire une chaine de caractere
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Lire fichier epub - Guide
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Caractere speciaux - Guide
3 réponses
Salut,
gets ne doit pas être utilisé, la fonction est trop dangereuse. Tout comme scanf("%s";...) sans contrôle de chaîne.
Utilise fgets(chaine, sizeof chaine, stdin);
Attention, cela stockera aussi le \n s'il y a de la place. Mais tu peux l'enlever facilement.
Cdlt
gets ne doit pas être utilisé, la fonction est trop dangereuse. Tout comme scanf("%s";...) sans contrôle de chaîne.
Utilise fgets(chaine, sizeof chaine, stdin);
Attention, cela stockera aussi le \n s'il y a de la place. Mais tu peux l'enlever facilement.
Cdlt