Bonjour,

Je voudrais faire des calculs en millisecondes. Pour cela je voudrais manipuler un combre qui contients le nombre de milliseconde ou microseconde depuis 1970.
Mes premiers test me donne des resultats bizarre. Quelqu'un peut m'indiquer où je me trompe (le plus ) ?

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
 #include <stdio.h>
#include <stdlib.h>
#include <time.h> // Pas necessaire ?
 
/*
 * 
 */
int main(int argc, char** argv) 
{
    struct timeval tv;
 
 
    printf( "Test 1 : %d\n" , 15 );
 
    gettimeofday(&tv, NULL);
    printf("Ce que je voudrais : %010ld%06ld\n", tv.tv_sec, tv.tv_usec);
    printf("Ce que j'ai        : %lld\n", (tv.tv_sec*1000000) + tv.tv_usec);
 
    unsigned long long test = (tv.tv_sec*1000000) + tv.tv_usec ;
 
    printf("?? : %lld \n", test );
 
    return (EXIT_SUCCESS);
}
Le résultat est aléatoire ...

Test 1 : 15
Ce que je voudrais : 1209026067586671
Ce que j'ai : 2519734122208879
?? : 1363697263