Fichier(C)

steftou -  
lucas01 Messages postés 2166 Date d'inscription   Statut Membre Dernière intervention   -
Bonsoir,
svp j'aimerai savoir s'il serait possible en C de créer un tableau de fichiers c'est à dire un tableau où chaque case est un ficher comportant les infos d'un employés? si oui,pourrais-je avoir svp le coup de code?
A voir également:

4 réponses

lucas01 Messages postés 2166 Date d'inscription   Statut Membre Dernière intervention   103
 
Slt,
La réponse est Oui! Par contre tu sais que le langage C est un langage de programmation de programme! Le code, je croie ( si sa marche avec le C ) ( En basic c'est Dim ). Je c'est pas si en C c'est la même chose. Peut être. Mais il serait plus simple en HTML. Le langage C sert à faire des programmes ( logiciel ) .
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Mais il serait plus simple en HTML
Tu vas pas aller loin avec l'HTML pour faire ce qu'il veut ^^.
0
lucas01 Messages postés 2166 Date d'inscription   Statut Membre Dernière intervention   103 > fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention  
 
Oui bah... Si il y a 20 employés sava le HTML, mais si il y a 300 employés, c'est plus compliquer. Mais le C encore plus. A moins que fiddy est un bon programmeur.

Lucas.
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Salut,
Pour faire un tableau de fichier :
#define MAX 10
FILE *tab[MAX];

for(int i=0;i<MAX;i++) {
    tab[i] = fopen(NomFichier,mode);
    if(tab[i]==NULL) { 
        fputs("erreur\n",stderr);
        exit(EXIT_FAILURE);
    }
}

for(int i=0;i<MAX;i++)
    free(tab[i]),tab[i]=NULL;

Cdlt
0
lucas01 Messages postés 2166 Date d'inscription   Statut Membre Dernière intervention   103
 
#define MAX 10
FILE *tab[MAX];

for(int i=0;i<MAX;i++) {
tab[i] = fopen(NomFichier,mode);
if(tab[i]==NULL) {
fputs("erreur\n",stderr);
exit(EXIT_FAILURE);
}
}

for(int i=0;i<MAX;i++)
free(tab[i]),tab[i]=NULL;


sa ne va pas...
0
steftou
 
merci fiddy mais j'ai peur de n'avoir pas bien saisie ceci:
for(int i=0;i<MAX;i++)
free(tab[i]),tab[i]=NULL;

est ce que tu peux m'expliquer?
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847 > steftou
 
Une fois que tu ouvres un fichier avec fopen, il faut le fermer. D'où l'utilisation de free. Il est d'usage de remettre également la variable à NULL, mais ceci n'est absolument pas obligatoire.
0
steftou
 
slt lucas01 qu'est ce qui ne va pas dans ce code?
0
lucas01 Messages postés 2166 Date d'inscription   Statut Membre Dernière intervention   103
 
Ce que j'ai mis en Gras! Par contre, je ne connait pas la nature de l'erreur! C'est le logiciel que j'utilise qui indique l'erreur!
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847 > lucas01 Messages postés 2166 Date d'inscription   Statut Membre Dernière intervention  
 
Tu as mal dû tester ^^.
La ligne est parfaitement correcte. Par contre, le copier coller ne suffit pas puisque j'ai juste donné la commande. Il ne faut pas oublier d'inclure tout le nécessaire (du genre #include, etc).
0
lucas01 Messages postés 2166 Date d'inscription   Statut Membre Dernière intervention   103 > fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention  
 
Oui c'est vrai!
0
lucas01 Messages postés 2166 Date d'inscription   Statut Membre Dernière intervention   103
 
Apparemment, c'est la commande entière!
0