#1 Le 24/04/2008, à 12:50
- jurce
fonction pour ouverir un fichier pbl en langage c
#include <stdio.h>
#include <stdlib.h>
#define max1 2
#define max2 4
#define max3 4
typedef char chaine[max1];
typedef char chain[max3];
typedef struct
{
chaine NomEquipe, Tnom[max2],TnomStaff[max3];
}Equipe;
int CreerEquipe(Equipe e, FILE *f)
{
chain nomFichier;
printf("entrer le nom du fichier :");
scanf("%s",nomFichier);
f = fopen(nomFichier,"w+");
if (f != NULL)
{
int i=0;
printf("Nom equipe :\n");
scanf("%s",e.NomEquipe);
fprintf(f,"Nom equipe : %s \n",e.NomEquipe);
printf("Nom d'entreneur :\n");
scanf("%s",e.Tnom[i]);
fprintf(f,"Nom d'entreneur : %s\n",e.Tnom[i]);
for(i=1;i<max2;i++)
{
printf("Nom joueur n°%d est:\n",i);
scanf("%s \n",e.Tnom[i]);
fprintf(f,"Nom joueur n°%d est : %s\n",e.Tnom[i]);
}
printf("les noms du staff technique \n");
for(i=1;i<=max3;i++)
{
printf("n°%d",i);
scanf("%s",e.TnomStaff[i]);
fprintf(f,"n°%d est : %s\n",i,e.TnomStaff[i]);
}
fclose(f);
}
return 0;
}
voila le code la premier fois il ma afficher ce fichier apres la premier compilation il donne une erreur de segmentation
Nom equipe : usma
Nom d'entreneur : mohamed
Nom joueur n° -1074042360 est : un code
Nom joueur n° -1074042340 est : un code
Nom joueur n° -1074042320 est : un code
Nom joueur n° -1074042300 est : un code
Nom joueur n° -1074042280 est : un code
Nom joueur n° -1074042260 est : un code
Nom joueur n° -1074042240 est : un code
Nom joueur n° -1074042220 est : uncode
Nom joueur n° -1074042200 est : un code
Nom joueur n° -1074042180 est : un code
Nom joueur n° -1074042160 est : un code
Nom joueur n° -1074042140 est : un code
Nom joueur n° -1074042120 est : un code
Nom joueur n° -1074042100 est : un code
Nom joueur n° -1074042080 est : un code
Nom joueur n° -1074042060 est : un code
Nom joueur n° -1074042040 est : un code
Nom joueur n° -1074042020 est : un code
Nom joueur n° -1074042000 est : un code
Nom joueur n° -1074041980 est : un code
Nom joueur n° -1074041960 est : un code
Nom joueur n° -1074041940 est : un code
Nom joueur n° -1074041920 est : un code
n° 1 est : omri
n° 2 est : fir
n° 3 est : frt
n° 4 est : frt
n° 5 est : frt
n° 6 est : frtt
n° 7 est : frtrt
n° 8 est : frtrt
n° 9 est : frty
n° 10 est : frty
a la place ou je vous ecris " un code "il donne un code ou je ne peux pas le poster
merci.
Dernière modification par jurce (Le 24/04/2008, à 12:51)
Que dieu être avec nous
Hors ligne
#2 Le 24/04/2008, à 23:31
- jurce
Re : fonction pour ouverir un fichier pbl en langage c
il y a quelqu'un pour me répondre?
Que dieu être avec nous
Hors ligne
#3 Le 25/04/2008, à 07:51
- nicolas.sitbon
Re : fonction pour ouverir un fichier pbl en langage c
Déjà, le code que tu as posté ne compile pas (pas de main()), ensuite ce qui me vient tout de suite à l'esprit, tu passes f en paramètre de ta fonction mais pourquoi? pourquoi ne pas le déclaré directement dans la fonction? ensuite, c'est crade de passer une structure en paramètre, généralement on passe un pointeur sur une structure. Bref c'est de choses me font dire que ça sent le roussi...
Hors ligne
#4 Le 25/04/2008, à 08:23
- rniamo
Re : fonction pour ouverir un fichier pbl en langage c
en c les indices des tableaux c'est : 0,1,..., max-1
...donc ton dernier for commence tard et finit tard (1 cran trop tard) donc normal ton erreur de seg.
PS : +1 pour les remarques précédentes
Dernière modification par rniamo (Le 25/04/2008, à 08:26)
< Quelques un des mes programmes | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
\ ^__^
\ (o o)\_______
(___)\ )\
Hors ligne