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
 
char * now()
{
time_t curtime;
//struct tm * my_time;
 
        time(&curtime);
        int error=errno;
        if (!(errno)) return ctime(&curtime);
        else {fprintf(stderr,"now() : %s\n",strerror(error));exit(EXIT_FAILURE);}
 
}
 
char * day(char * d)
{
static  char dd[4];
        int error=errno;
 
 
        strncpy(dd,d,3);
        dd[3]='\0';
 
 
 
        if (!(errno)) return dd;
        else {fprintf(stderr,"day() : %s\n",strerror(error));exit(EXIT_FAILURE);}
 
}
Pour les fonctions ...

et pour le main()

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
 
int main () {
char c_date[30];
char c_day[4];
char n_day[3];
char c_month[4];
 
        while (TRUE)
        { 
 
        strcpy(c_date,now());
        strcpy(c_day,day(c_date));
       }
return 0;
 
}
Je pourrai me débrouiller avec des adresses de variables,
mais j'utilise le positionnement mémoire static .

Est-ce bien ?