Pb structure en C
eden_eve
-
eden_eve -
eden_eve -
Bonjour,
j'ai un pb avec ma structure, j'ai un pb qd je compile societe.c
undefined reference to 'naissance'. même problème pour les autres fonctions.
J'ai vraiment besoin de votre aide.
Merci à vous
voici mon code societe.c
#include "individu.h"
#include <string.h>
#include <stdio.h>
int main() {
//printf("Entrer la taille de votre tableau", int taille)
//scanf("%
Individu * tab[taille];
char r;
printf(" A Affichage\n");
printf(" N Naissance\n");
printf(" D Deces\n");
printf(" M Mariage\n");
printf(" S Separation\n");
printf(" Q Quitter\n");
printf("Entrer votre choix:");
scanf("%c",&r);
switch(r) {
case 'N':
naissance();
break;
case 'D':
destruction();
break;
case 'M':
mariage();
break;
case 'S':
separation();
break;
case 'A':
affichage();
break;
}
scanf("%c",&r);
system("pause");
return r;
}
individu.c
#include "individu.h"
#include <stdio.h>
#include <string.h>
#define TAILLE 5
Individu * TabInd[TAILLE];
// definition de fonction affichage
void affichage(){
int i;
for(i=0;i<TAILLE;i++){
if (TabInd[i]==NULL) continue;
printf("%s\n",TabInd[i]->nom);
}
}
// rechercher un individu dans le tableau
int rechercher(char * s){
int i;
for(i=0;i<TAILLE;i++){
if (TabInd[i]==NULL) continue;
if (strcmp(s,TabInd[i]->nom)==0)
return i;
}
return -1;
}
void destruction(){
char a[64];
printf("Nom ?\n");
scanf("%s", a);
int i=rechercher(a);
if(i==-1) {
// traitement d_erreur
printf("Pas d'individu portant ce nom.\n");
return;
}
free(TabInd[i]);
TabInd[i] = NULL;
printf("Individu detruit.\n");
}
int premiereplacevide(){
int i;
for(i=0;i<TAILLE;i++){
if (TabInd[i]==NULL)
return i;
}
}
void creation(){
//demander le nom au clavier
char n[15];
printf("nom individu?");
scanf("%s",&n);
char s;
int i=permiereplacevide();
TabInd[i]=(Individu*)malloc(sizeof(Individu));
TabInd[i]->sexe = 'M';
strcpy(TabInd[i]->nom,n);
//strcpy(TabInd[i]->sexe,s);
TabInd[i]->age=30;
}
void mariage()
{
char mh[64];
printf("nom de mari ?",mh);
scanf("%s",&mh);
char mf[64];
printf("nom de mariee ?",mf);
scanf("%s",&mf);
printf("%s et %s sont mariees",mh,mf);
}
}
individu.h
#ifndef INDIVIDU_H
#define INDIVIDU_H
typedef struct {
char nom[64];
char sexe;
int age;
}Individu, *pindividu;
void naissance();
void affichage();
void creation();
void destruction();
int rechercher(char *);
//Individu * rechercher(char*);
int premiereplacevide();
#endif
j'ai un pb avec ma structure, j'ai un pb qd je compile societe.c
undefined reference to 'naissance'. même problème pour les autres fonctions.
J'ai vraiment besoin de votre aide.
Merci à vous
voici mon code societe.c
#include "individu.h"
#include <string.h>
#include <stdio.h>
int main() {
//printf("Entrer la taille de votre tableau", int taille)
//scanf("%
Individu * tab[taille];
char r;
printf(" A Affichage\n");
printf(" N Naissance\n");
printf(" D Deces\n");
printf(" M Mariage\n");
printf(" S Separation\n");
printf(" Q Quitter\n");
printf("Entrer votre choix:");
scanf("%c",&r);
switch(r) {
case 'N':
naissance();
break;
case 'D':
destruction();
break;
case 'M':
mariage();
break;
case 'S':
separation();
break;
case 'A':
affichage();
break;
}
scanf("%c",&r);
system("pause");
return r;
}
individu.c
#include "individu.h"
#include <stdio.h>
#include <string.h>
#define TAILLE 5
Individu * TabInd[TAILLE];
// definition de fonction affichage
void affichage(){
int i;
for(i=0;i<TAILLE;i++){
if (TabInd[i]==NULL) continue;
printf("%s\n",TabInd[i]->nom);
}
}
// rechercher un individu dans le tableau
int rechercher(char * s){
int i;
for(i=0;i<TAILLE;i++){
if (TabInd[i]==NULL) continue;
if (strcmp(s,TabInd[i]->nom)==0)
return i;
}
return -1;
}
void destruction(){
char a[64];
printf("Nom ?\n");
scanf("%s", a);
int i=rechercher(a);
if(i==-1) {
// traitement d_erreur
printf("Pas d'individu portant ce nom.\n");
return;
}
free(TabInd[i]);
TabInd[i] = NULL;
printf("Individu detruit.\n");
}
int premiereplacevide(){
int i;
for(i=0;i<TAILLE;i++){
if (TabInd[i]==NULL)
return i;
}
}
void creation(){
//demander le nom au clavier
char n[15];
printf("nom individu?");
scanf("%s",&n);
char s;
int i=permiereplacevide();
TabInd[i]=(Individu*)malloc(sizeof(Individu));
TabInd[i]->sexe = 'M';
strcpy(TabInd[i]->nom,n);
//strcpy(TabInd[i]->sexe,s);
TabInd[i]->age=30;
}
void mariage()
{
char mh[64];
printf("nom de mari ?",mh);
scanf("%s",&mh);
char mf[64];
printf("nom de mariee ?",mf);
scanf("%s",&mf);
printf("%s et %s sont mariees",mh,mf);
}
}
individu.h
#ifndef INDIVIDU_H
#define INDIVIDU_H
typedef struct {
char nom[64];
char sexe;
int age;
}Individu, *pindividu;
void naissance();
void affichage();
void creation();
void destruction();
int rechercher(char *);
//Individu * rechercher(char*);
int premiereplacevide();
#endif
A voir également:
- Pb structure en C
- Logiciel calcul structure bois gratuit - Télécharger - Architecture & Déco
- Structure d'un rapport de stage - Guide
- Structure url - Guide
- Trouvez l'erreur dans la structure du document et corrigez-la. - Forum Word
- Error pdf structure 40 - Forum PDF