Bonjour, c'est dans le titre. Je sais qu'il faut mieux allouer dynamiquement (avec malloc()) le tableau et retourner son pointeur mais ayant définis mes constantes préalablement je ne sais pas comment m'y prendre . De plus sur ces deux fonctions, je me suis complètement emmêler les pinceaux. Ce serrais sympa d'avoir votre avis .

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
const char * NomJourSemaine[] = {"Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"};
 
const char * NomMois[] = {"janvier", "fevrier", "mars", "avril", "mai", "juin",
                          "juillet", "aout", "septembre", "octobre", "novembre", "decembre"};
 
 /**
 * Affiche la date et l'heure courante (format francais)
 * @param un pointeur vers une constante de char.
 * @return un pointeur vers une constante de type char.
 */
char *timeString (const char temps) {
      time_t timestamp ;
      struct tm * t ;
      timestamp = time(NULL) ;
      t = localtime(&timestamp) ;
      if(temps != 'J' && temps != 'M') {
          return EXIT_SUCCESS ;
      }
      if(temps == 'J')
          return (char*) NomJourSemaine[t->tm_wday] ;
      if(temps == 'M')
          return (char*) NomMois[t->tm_mon] ;
 }
  /**
  * Affiche la date et l'heure courante.
  * @param un pointeur vers une constante de char.
  * @return un entier naturel non signé (int).
  */
 size_t timeInt (const char temps) {
     time_t timestamp ;
     struct tm * t ;
     timestamp = time(NULL) ;
     t = localtime(&timestamp) ;
     switch (temps){
         case 'J' : return t->tm_wday ; break ;
         case 'M' : return t->tm_mon ; break ;
         case 'A' : return (1900 + t->tm_year) ; break ;
         case 'h' : return t->tm_hour ; break ;
         case 'm' : return t->tm_min ; break ;
         case 's' : return t->tm_sec ; break ;
     }
     //return EXIT_SUCCESS ;
 }