Pb avec les fonctions "str" de VC++ 6

Messages postés
13
Date d'inscription
mercredi 4 février 2004
Statut
Membre
Dernière intervention
23 mai 2011
- - Dernière réponse : cs_djl
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
- 24 août 2004 à 19:42
Depuis plusieurs jours j'ai des prob avec les fonctions :
strcat ; strlen ; strcpy

Voila ce qu'il me dit :
First-chance exception in urlfile.exe: 0xC0000005: Access Violation.

Biensur ca ce passe qu'au bout de la 100° ou 1000° fois que je l'utilise ( la premiere ce serait trop simle).

J'ai été obliger des les réécrire.

Si vous aussi vous avez eu le même prob et connaissez la solus', n'esiter pas....

L' Ariko vous Salut.....
Afficher la suite 

4 réponses

Messages postés
1537
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2009
1
0
Merci
Ben ce type d'erreur ne vient pas du tt de ces fonctions ! avec strcat et strcpy, tu depasses la zone allouée == buffer overflow et avec strlen, je pense ke tu a oublié de finir ta chaine avec le zero final, dc strlen continue de chercher la fin, mais en vain...
Verifie ton code.

++
Commenter la réponse de cs_AlexMAN
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
5
0
Merci
d'ailleur ya aucune raison que ca marche pour les 99 premiere fois et que ca foire à la 100e

utilise strncpy, strncat, ...
Commenter la réponse de cs_djl
Messages postés
21054
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
7 novembre 2014
13
0
Merci
Si djl, possible que soit le 10eme strcpy qui foire, depend de l'etat de la pile a ce moment, tant qu'il n'ecrasait rien de vital, ça passait.
strncpy est a conseiller s'il prend des params de l'exterieur sinon il faut juste coder proprement.

ciao...
BruNews, Admin CS, MVP Visual C++
Commenter la réponse de BruNews
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
5
0
Merci
dans ce cas la faudrais voir le code
Commenter la réponse de cs_djl