Merci beaucoup...
J'ai réussi à rêgler cette erreur autrement mais de façon un peu magique et mystérieuse, j'ai juste augmenté la taille de ma chaine temp pour la mettre à 20 et hop ça marche....

-------------------------------
Réponse au message :
-------------------------------
>
>
>
>
> -------------------------------
> Réponse au message :
> Le problème viens de ta méthode de lecture. En effet tu lui dis de lire avec le format %s. Personellement je ne lis jamais les données de cette manière (avec la sortie formatée style %type). Donc je ne peux pas t'assurer que ce soit l'erreur. D'autant plus que tu ne souligne pas l'endroit où ça plante.
> Je te propose donc une autres fonction pour lire:
>
> fread( &temp, sizeof( temp ), 1, fichierPtr );
>
> Le premier arg est la raviable qui recevra la donée.
> Le second la taille à lire ne octects
> Le troisième le nombre de fois
> Le dernier le pointeur de fichier
>
> Mais avant d'utiliser cela je te conseil de l'ouvrir en mode binaire: "rb" au lieu de "r"
>
> Je trouve que lire des donnée avec fread est beaucoup plus efficace. Il y a l'inverse qui fonctionne de la même manière, elle s'appelle fwrite.
> -------------------------------
>
> > Voilà mon problème, je suis débutant en C alors veuillez pardonner les fautes de voc que je pourrais faire :)
> > Don, en fait, j'ai créé une fonction sensée récuperer des données dans un fichier, je compile et tout se passe pour le mieux du monde mais lors de l'exécution ça plante. Je lance donc un débogage et je me rend compte que le prog arrive pas à sortir de ma fonction... il me renvoie une erreur 0xC0000005 avec des commentaires... je sais pas pourquoi, il me semble pourtant que mes pointeurs sont correctement utilisés mais bon...
> > Voilà la source :
> >
> > static void configPin (char dir[], struct sPin tPin [])
> >
> > {
> > char temp [10], *end;
> > int i, l;
> >
> > //Ouverture du fichier en lecture seule
> > fich=fopen(dir, "r");
> >
> > //On se "cale" au début de la définition des pins
> > do
> > {
> > fscanf(fich,"%s", temp);
> > }while (strcmp(temp, "PINS")!=0);
> >
> > //On stocke les informations relatives aux pins dans le tableau
> > i=0;
> > fscanf(fich,"%s", temp);
> > do
> > {
> > //Calcul de la longueur de chaine jusqu'aux :
> > l=strcspn (temp, ":");
> > strncpy(tPin[i].nom, temp, l);
> > //Extraction du numero de pin et écriture dans la structure.
> > tPin[i].num=(int)strtod (temp+l+1, &end);
> > fscanf(fich,"%s", temp);
> > }while (strcmp(temp, "*")!=0);
> >
> > fclose (fich);
> > }
> >
> > Merci d'avance à l'aide que vous pourrez m'apporter...
> >
> >

>