Bonjour.
Je cherche à convertir une struct timeval en double.
J'ai bricolé quelquechose, qui semble fonctionner :
Code C : 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 double tvtod(struct timeval tv) { char*sec=malloc(sizeof(long double)); sprintf(sec,"%ld",tv.tv_sec); char*usec=malloc(sizeof(long double)); sprintf(usec,"%ld",tv.tv_usec); char*temps=malloc(2*sizeof(long double)+8); strcat(temps,sec); strcat(temps,"."); strcat(temps,usec); double tps =strtod(temps,NULL); free(sec); free(usec); free(temps); return tps; }
Cette fonction semble bien fonctionner mais au bout de 7 appels elle crache en segfault ...
Si quelqu'un a une idée pour régler le soucis ou a une autre proposition je suis preneur.
Merci !
Partager