Caractère " (double quote) en C
Résolu/Fermé
mano9
Messages postés
28
Date d'inscription
lundi 13 octobre 2008
Statut
Membre
Dernière intervention
11 mai 2010
-
17 avril 2009 à 21:14
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 19 avril 2009 à 18:05
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 19 avril 2009 à 18:05
A voir également:
- Double cote
- Double ecran - Guide
- Comment ecrire un double cote " " ✓ - Forum Perl
- Whatsapp double sim - Guide
- Double appel - Guide
- Double authentification google - Guide
4 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
17 avril 2009 à 21:30
17 avril 2009 à 21:30
Salut,
Trois erreurs dans ton code.
1/ La taille de ta chaîne est trop petite pour contenir "SC CREATE". (10 caractères minimum, tu peux en mettre plus pour être tranquille).
2/ machaine = "SC CREATE " "; Interdit de faire ça. Tu dois utiliser la fonction strncpy pour réaliser la copie de la chaîne. Par exemple :
3/Pas de guillemets dans la chaîne. Ou alors il faut l'échapper avec un backslash. Par exemple : "SC CREATE\" "
Cdlt
Trois erreurs dans ton code.
1/ La taille de ta chaîne est trop petite pour contenir "SC CREATE". (10 caractères minimum, tu peux en mettre plus pour être tranquille).
2/ machaine = "SC CREATE " "; Interdit de faire ça. Tu dois utiliser la fonction strncpy pour réaliser la copie de la chaîne. Par exemple :
strncpy(machaine,"SC CREATE",sizeof machaine); machaine[sizeof machaine - 1]='\0'; //pour placer le \0 final.
3/Pas de guillemets dans la chaîne. Ou alors il faut l'échapper avec un backslash. Par exemple : "SC CREATE\" "
Cdlt
19 avril 2009 à 10:13
Je me permet cette petite correction sur la fonction strncpy() :
> Copie au maximum longueur caractères de source dans cible en complétant par des caractères de code nul si taille cible > taille source.
Sinon dans son cas il peut simplement utiliser vieille fonction strcpy().
Bonne journée.
19 avril 2009 à 12:32
Sinon dans son cas il peut simplement utiliser vieille fonction strcpy().
Oui, mais attention au buffer overflow.