[C] Modification indésirable d'un pointeur
Fermé
Tanynep
Messages postés
2
Date d'inscription
lundi 21 décembre 2009
Statut
Membre
Dernière intervention
21 décembre 2009
-
21 déc. 2009 à 13:04
Tanynep Messages postés 2 Date d'inscription lundi 21 décembre 2009 Statut Membre Dernière intervention 21 décembre 2009 - 21 déc. 2009 à 14:02
Tanynep Messages postés 2 Date d'inscription lundi 21 décembre 2009 Statut Membre Dernière intervention 21 décembre 2009 - 21 déc. 2009 à 14:02
A voir également:
- [C] Modification indésirable d'un pointeur
- Suivi de modification word - Guide
- Logiciel modification pdf gratuit - Guide
- Liste numéro indésirable - Guide
- Modification dns - Guide
- Pointeur souris disparu windows 10 - Guide
2 réponses
loupius
Messages postés
697
Date d'inscription
dimanche 1 novembre 2009
Statut
Membre
Dernière intervention
31 décembre 2017
148
21 déc. 2009 à 13:33
21 déc. 2009 à 13:33
char c[1];
c[1] = '\0';
Après ces deux lignes, on est au moins sûr d'une chose; sans pourvoir prédire lequel, on est certain qu'il y aura un comportement anormal.
Tu dis que le tableau 'c' contient 1 caractère et tu écris un 'zéro' dans le deuxième ! Il te faut donc dire que le tableau contient 2 caractères dont l'indice utilisable pourra aller de '0' à '1'.
NB: Je n'ai pas lu tout ton code non indenté... il y a peut-être d'autres erreurs ;-)
Bonne continuation.
c[1] = '\0';
Après ces deux lignes, on est au moins sûr d'une chose; sans pourvoir prédire lequel, on est certain qu'il y aura un comportement anormal.
Tu dis que le tableau 'c' contient 1 caractère et tu écris un 'zéro' dans le deuxième ! Il te faut donc dire que le tableau contient 2 caractères dont l'indice utilisable pourra aller de '0' à '1'.
NB: Je n'ai pas lu tout ton code non indenté... il y a peut-être d'autres erreurs ;-)
Bonne continuation.
Tanynep
Messages postés
2
Date d'inscription
lundi 21 décembre 2009
Statut
Membre
Dernière intervention
21 décembre 2009
21 déc. 2009 à 14:02
21 déc. 2009 à 14:02
Merci pour ta réponse, c'était bien ça qui plantait ! Je pensais que le compilateur allouait un octet de mémoire en plus pour le caractère de fin de chaîne, mais je confondais avec une déclaration du genre : char chaine = "hello world" ...