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 17836c9..afe736b 100755 Binary files a/srcs/exe and b/srcs/exe differ 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; }