On change l'implémentation Code originel // Nombres.h typedef enum { OK,ERREUR } CodeErreur; typedef struct { float t[MAX]; int nb; } Nombres; CodeErreur initNombres(Nombres *nombres); CodeErreur ajoutNombres(Nombres *nombres, float nouveau_nombre); float rechercherNombres(const Nombres *nombres, int indice, CodeErreur *err); CodeErreur detruireNombres(Nombres *nombres); // Nombres.c CodeErreur initNombres(Nombres *nombres) { nombres->nb=0; return OK; } CodeErreur ajoutNombres(Nombres *nombres, float nouveau_nombre) { if(nombres->nb==MAX) return ERREUR; nombres->t[nombres- >nb++)=nouveau_nombre; return OK; } float rechercherNombres(const Nombres *nombres, int indice, CodeErreur *err) { if(indice>=nombres->nb) { *err=ERREUR; return 0.0f; } *err=OK; return nombres->t[indice]; } CodeErreur detruireNombres(Nombres *nombres) { return OK; } // SuperProg.c #include ''Nombres.h'' int main() { Nombres mes_nombres; initNombres(&mes_nombres); ajoutNombres(&mes_nombres,33.12f ); ajoutNombres(&mes_nombres,2537.
{}