J'ai un code syntaxiquement correcte mais qua

knivesx Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
knivesx Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
J'ai un code syntaxiquement correcte mais quand j'exécute le code le programme ne marche pas grâce au débogueur j ai trouvé a quel ligne est le problème mais j'ai ps compris c quoi le problème exactement. Voila le code: l'erreur est dans la fonction strcpy()

struct unite_lex
{
char lex[50],val[50];
struct unite_lex *next;
}; typedef struct unite_lex LISTE;

void chargi(UNITE *r,char *c,char *v)
{
strcpy(r->lex,c);
strcpy(r->val,v);
}
A voir également:

2 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
Si tu es sûr que la syntaxe est correct, comment veux-tu que l'on y trouve une erreur ?
C'est surement plus une question de contexte...

Lorsque ça plante, quelles sont les valeurs de r, c et v ?
r est de type UNITE, mais tu l'utilises comme étant une valeur de LISTE...

Et surtout : quel est le message d'erreur ?
0
knivesx Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Merci Pour votre rep,
le message d'erreur est :Exception non gérée à 0x004117a5 dans Compil.exe : 0xC0000005: Violation d'accès lors de la lecture de l'emplacement 0x00000000.

Problème d'adressage mais j'ai ps trouvé de solution alors si ta une idée aide moi svp.
0
KX Messages postés 19031 Statut Modérateur 3 020
 
L'adresse 0x00000000 c'est la valeur NULL, ce qui signifie que c ou v n'est pas une chaîne de caractères valide...
Assures toi de ne jamais appeler chargi avec des valeurs à NULL et ça devrait bien se passer.
0
knivesx Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour votre aide!! :)
0