From f96e2a639e3a6194e34d72ce1dd5c77b5ee1cd0b Mon Sep 17 00:00:00 2001 From: Pradheep Unnikrishnan <pradheep.unnikrishnan@etu.unistra.fr> Date: Thu, 21 Mar 2024 00:18:25 +0100 Subject: [PATCH] =?UTF-8?q?commentaires=20pour=20la=20documentation=20Doxy?= =?UTF-8?q?file=20+=20mise=20=C3=A0=20jour=20des=20fuites=20de=20m=C3=A9mo?= =?UTF-8?q?ire=20et=20du=20bug=20sur=20la=20fonction=20principale?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../code_modifie/reorganisation/main.c | 35 ++++++++++++++++--- 1 file changed, 31 insertions(+), 4 deletions(-) diff --git a/TP3_SUITE_TP2_CLONE/code_modifie/reorganisation/main.c b/TP3_SUITE_TP2_CLONE/code_modifie/reorganisation/main.c index 13c19dc..6208348 100755 --- a/TP3_SUITE_TP2_CLONE/code_modifie/reorganisation/main.c +++ b/TP3_SUITE_TP2_CLONE/code_modifie/reorganisation/main.c @@ -1,24 +1,49 @@ +/** + *@file main.c + *@brief Programme principale pour trier un tableau dynamique 1D (une dimension) + *@details Ce programme créer un tableau, le remplit avec des valeurs aléatoires, le trie, puis affiche le tableau trié + *@author Pradheep U. + *@date 20/03/2024 + *@version 2.0 + *@copyright Copyright 2024 Pradheep U. +*/ + #include "tableau.h" #include "alea.h" #include "remplir.h" #include "io.h" #include "tri.h" -tableau t; +tableau t; //Déclaraition d'un tableau dynamique +/** + * @fn int main(argc, char **argv) + * @brief Fonction principale + * @param argc Nombre d'arguments de ligne de commande + * @param argv Tableau des arguements de ligne de commande + * @return 0 en cas de succès, 1 en cas d'échec + * @details Verifie le nombre d'arguments et procéde au remplissage, au tri et à l'affichage du tableau +*/ int main(int argc, char **argv) { + if (argc < 3) { - printf("usage : main <nb elems> <max val>\n"); + printf("usage : main <nb elems> <max val>\n"); //la valeur maximale que peut prendre une valeur return 1; } t.taille = atoi(argv[1]); // lecture du 1er argument + int m = atoi(argv[2]); // lecture du 2eme argument - t.valeurs = 0; // initialisation du pointeur - t.valeurs = (int *)malloc(t.taille * sizeof(int)); // allocation du tableau + + t.valeur = NULL; // initialisation du pointeur + t.valeur = (int *)malloc(t.taille * sizeof(int)); // allocation du tableau + if(t.valeur == NULL) { + fprintf(stderr, "Erreur d'allocation de la mémoire\n"); + exit(EXIT_FAILURE); + } remplir(m); // remplissage aléatoire du tableau @@ -30,5 +55,7 @@ int main(int argc, char **argv) printf("tableau trié :\n"); affiche(); + free(t.valeur); //libération de la mémoire + return 0; } -- GitLab