J'ai un code syntaxiquement correcte mais qua

knivesx Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
knivesx Messages postés 2 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);
}

2 réponses

  1. 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
  2. knivesx Messages postés 2 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
    1. 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
    2. knivesx Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci pour votre aide!! :)
      0