From 833eae87488d48d79d4f1c431caf2f80f29a07e9 Mon Sep 17 00:00:00 2001 From: "louis.germain" Date: Mon, 18 Dec 2023 15:08:30 +0100 Subject: [PATCH] lecture de l'adrese dynamique --- includes/charge.h | 4 ++++ includes/ft.h | 0 includes/main.h | 3 ++- includes/recherche.h | 5 ----- includes/structures.h | 10 ++++++---- srcs/charge.c | 29 +++++++++++++++++++++++++++++ srcs/exe | Bin 17936 -> 18152 bytes srcs/recherche.c | 19 ------------------- srcs/{atomes.c => sort.c} | 0 srcs/structures.c | 3 ++- 10 files changed, 43 insertions(+), 30 deletions(-) create mode 100644 includes/charge.h delete mode 100644 includes/ft.h delete mode 100644 includes/recherche.h create mode 100644 srcs/charge.c delete mode 100644 srcs/recherche.c rename srcs/{atomes.c => sort.c} (100%) diff --git a/includes/charge.h b/includes/charge.h new file mode 100644 index 0000000..c26aab4 --- /dev/null +++ b/includes/charge.h @@ -0,0 +1,4 @@ +#include +#include + +char *readAdress(FILE *flot); \ No newline at end of file diff --git a/includes/ft.h b/includes/ft.h deleted file mode 100644 index e69de29..0000000 diff --git a/includes/main.h b/includes/main.h index 3876ee2..e99f3b0 100644 --- a/includes/main.h +++ b/includes/main.h @@ -1 +1,2 @@ -#define tmaxTravaux 8 \ No newline at end of file +#define tmaxTravaux 8 + diff --git a/includes/recherche.h b/includes/recherche.h deleted file mode 100644 index 651b285..0000000 --- a/includes/recherche.h +++ /dev/null @@ -1,5 +0,0 @@ -#include -#include -#include - -int rechTravaux(char travauxName[], Offre *tabTravaux[]); \ No newline at end of file diff --git a/includes/structures.h b/includes/structures.h index dbb114f..af91c56 100644 --- a/includes/structures.h +++ b/includes/structures.h @@ -1,5 +1,6 @@ #include #include +#include typedef struct { @@ -29,7 +30,7 @@ typedef enum { //Devis void displayDevis(Devis d); -Devis readDevis(char *filename, Offre *tabTravaux[]); +Devis readDevis(Offre *tabTravaux[]); //ListeDevis @@ -43,6 +44,7 @@ void displayListeDevis(ListeDevis l); //Offre -Offre newOffre(void); -Booleen emptyOffre(Offre o); -void displayOffre(Offre o); \ No newline at end of file +Offre newOffre(char *travauxName); +Booleen emptyOffre(Offre o); +void displayOffre(Offre o); +int rechTravaux(char travauxName[], Offre *tabTravaux[]); \ No newline at end of file diff --git a/srcs/charge.c b/srcs/charge.c new file mode 100644 index 0000000..b75618f --- /dev/null +++ b/srcs/charge.c @@ -0,0 +1,29 @@ +#include "../includes/charge.h" + +char *readAdress(FILE *flot) +{ + char *adresse, *s, aux[5]; + int i=0, tmax=5; + adresse = (char *)malloc(sizeof(char)*tmax); + fgets(adresse, 5, flot); + + while (adresse[i]!='\n') + { + if (i==tmax) + { + tmax+=5; + s = (char *)realloc(adresse, tmax*sizeof(char)); + if (s==NULL) + { + printf("Erreur reallocation pour str adresse\n"); + exit(1); + } + adresse=s; + fgets(aux, 5, flot); + strcat(adresse, aux); + } + i++; + } + adresse[strlen(adresse)-1]='\0'; + return adresse; +} \ No newline at end of file diff --git a/srcs/exe b/srcs/exe index 17836c9152497ae43312e9549b774be9ac466918..afe736b24f903c9001b60bb9e6d4e3ce91b0f934 100755 GIT binary patch delta 4025 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 T8hEa@)U=nEJw1i9mD&FT2&Vxe diff --git a/srcs/recherche.c b/srcs/recherche.c deleted file mode 100644 index 9d9109a..0000000 --- a/srcs/recherche.c +++ /dev/null @@ -1,19 +0,0 @@ -#include "../includes/structures.h" -#include "../includes/recherche.h" -#include "../includes/main.h" - -int rechTravaux(char *travauxName, Offre *tabTravaux[], int tlog) -{ - int deb=0, end=tmaxTravaux-1, mid; //On utilise la taille max de travaux car travaux est un tableau constant, sa taille max est égale à sa taille logique. - while(deb<=end) - { - mid = deb+end /2; - if (strcmp(travauxName, tabTravaux[mid]->travaux)==0) - return mid; - if (strcmp(travauxName, tabTravaux[mid]->travaux) < 0) - end=mid-1; - else - deb=mid+1; - } - return -1; -} \ No newline at end of file diff --git a/srcs/atomes.c b/srcs/sort.c similarity index 100% rename from srcs/atomes.c rename to srcs/sort.c diff --git a/srcs/structures.c b/srcs/structures.c index a16b0ae..1b8586a 100644 --- a/srcs/structures.c +++ b/srcs/structures.c @@ -1,4 +1,5 @@ #include "../includes/structures.h" +#include "../includes/charge.h" #include "../includes/main.h" //Devis @@ -25,7 +26,7 @@ Devis readDevis(Offre *tabTravaux[]) // A finir } fgets(d.nomE, 32, devisFile); d.nomE[strlen(d.nomE)-1] = '\0'; - //Trouver comment avoir la longueur de l'adresse puis la mettre dans le devis ! + readAdress(devisFile); fscanf(devisFile, "%d\n%d\n%d", d.capital, d.duree, d.prix); return d; }