2 réponses
Plusieurs possibilités :
tu utilises des fonctions qui récupère la mémoire du buffer clavier ou autre tel que getchar() et du coup lorsque tu enlèves tes chaînes de caractères, la fonction getchar() récupère tout sauf ce qui est dans le buffer d'où l'erreur.
En c, une chaîne de caractères est en fait un tableau de caractères terminé par le caractère NULL ou \0
Donc tout dépend du code que tu utilises pour gérer ters chaînes de caractères, si tu ne tiens pas compte de NULL, tu peux avoir des chevauchement de plage mémoire d'où l'erreur.
Ex : "moi" fait en fait 4 caractères en C
tu utilises des fonctions qui récupère la mémoire du buffer clavier ou autre tel que getchar() et du coup lorsque tu enlèves tes chaînes de caractères, la fonction getchar() récupère tout sauf ce qui est dans le buffer d'où l'erreur.
En c, une chaîne de caractères est en fait un tableau de caractères terminé par le caractère NULL ou \0
Donc tout dépend du code que tu utilises pour gérer ters chaînes de caractères, si tu ne tiens pas compte de NULL, tu peux avoir des chevauchement de plage mémoire d'où l'erreur.
Ex : "moi" fait en fait 4 caractères en C
leprechaun
Messages postés
265
Date d'inscription
jeudi 16 mai 2002
Statut
Membre
Dernière intervention
18 mars 2003
10
13 juin 2002 à 11:53
13 juin 2002 à 11:53
Pour les msg de deboggage je te conseil d'utiliser 'puts( )'.
Un jour je serais Castor a la place de Castor!!!
Good Luck
Un jour je serais Castor a la place de Castor!!!
Good Luck