j'ai une petite fonction qui devrait me renvoyer une chaine de caractere. Or il ne me renvoie que des truc incohérents. Je sais qu'il faut utiliser des pointeurs de char mais dans ce cas, il ne me renvoie que la premiere lettre!!!
voila mon code:
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 char *jourdelasemaine(time_t date) { struct tm when; short unsigned int numjour; char libjour[8],*libelle; when = *localtime(&date); numjour=when.tm_wday; switch (numjour) { case 0 : strcpy(libjour, "dimanche"); break; case 1 : strcpy(libjour, "lundi"); break; case 2 : strcpy(libjour, "mardi"); break; case 3 : strcpy(libjour, "mercredi"); break; case 4 : strcpy(libjour, "jeudi"); break; case 5 : strcpy(libjour, "vendredi"); break; case 6 : strcpy(libjour, "samedi"); break; default: strcpy(libjour, "erreur"); break; } libelle=&libjour; return (&libjour); } void main( void ) { time_t now;//, result; char libjour[8],*libel; libel=malloc(8); time( &now ); libel=jourdelasemaine(now); &libjour = libel; printf("\n nous sommes un %s \n",libjour);
Partager