J'ai une variable de type time_t (de <time.h>
) qui stocke l'heure d'un échec, et souhaite l'initialiser à une valeur "nulle" qui sera la valeur finale si aucune erreur ne se produit. Existe-t-il un moyen standard de définir une variable time_t sur une sorte de valeur nulle connue? Je vois que la fonction time()
renvoie -1 si une erreur survient, peut-être que c'est mieux, mais je me demande si je peux simplement assigner une valeur entière à un typedef comme ça. Peut-être que je devrais utiliser ça ...?Comment représenter la valeur non initialisée pour le type time_t dans c
time_t failTime = (time_t)(-1);
La réponse acceptée ici http://stackoverflow.com/questions/471248/what-is-ultimately-a-time-t-typedef-to indique « ISO C définit time_t comme un type arithmétique, mais ne spécifie pas de type, de plage, de résolution ou d'encodage particulier, ni les significations des opérations arithmétiques appliquées aux valeurs temporelles. " Donc, il semble que ce ne sera pas standard, quelle que soit votre solution. –
'time_t failTime = -1;' est suffisant, sauf si le code tente de travailler avec d'autres valeurs négatives de 'time_t' - ce qui est assez rare. – chux
Je suppose qu'il n'y a aucune raison de lancer un littéral entier – robisrob