Fonction ctime en langue C

Fonction ctime en langue C
Comme nous l'avons expliqué dans plusieurs articles sur les fonctions définies dans «Time.h ”, les données de temps sont calculées à partir des secondes écoulées depuis 00:00:00 UTC le 1er janvier 1970 ou Unix Time. Pour utiliser ces données dans un format lisible par l'utilisateur, vous devez convertir cette fois en une chaîne au format DateTime.

Dans ce Indice de linux Article, nous expliquerons comment obtenir le temps et utiliser le ctime () fonction pour convertir les temps unix en chaînes. Nous donnons une description théorique de la syntaxe de la fonction et de ses arguments d'entrée et de sortie, ainsi que les types de données que chacun prend en charge. Nous implémenterons ensuite l'utilisation de cette fonctionnalité avec des exemples pratiques en utilisant des extraits de code et des images.

Ctime () Syntaxe de fonction dans le langage C

char * str ctime (const time_t * t_ptr);

Ctime () Description de la fonction dans le langage C

Le ctime () La fonction renvoie le pointeur vers une chaîne dans * Str qui contient le temps Unix envoyé dans Time_t et converti en chaînes au format DateTime.

Tandis que la fonction AscTime () convertit le temps local ou GMT stocké dans la structure TM en une chaîne, ctime () calcule directement le temps Unix et le renvoie sous forme de chaîne au format DateTime. Par conséquent, dans certains cas, cette fonction est une méthode plus simple et plus pratique qu'AscTime () pour obtenir la chaîne de temps.

Le format que cette fonction renvoie dans la chaîne de sortie est le suivant:

"Www mmm dd hh: mm: ss yyyy \ n \ 0"

Les jours et les mois sont représentés par les trois premières lettres de leurs noms. Les dates sont représentées par deux chiffres pour les jours et les mois et quatre chiffres pour l'année. Le Str La chaîne est terminée avec une nouvelle ligne et un caractère nul.

La fonction ctime () et ses variables sont définies dans le «temps.Fichier d'en-tête h ”. Avant de pouvoir les utiliser, vous devez les ajouter à votre ".c "ou".Fichier d'en-tête h ”comme suit:

#inclure

Une fois que nous incluons le «temps.Fichier d'en-tête h ”, nous pouvons utiliser le ctime (), AscTime () et toutes les autres fonctions définies dans cet en-tête.

Comment convertir le temps Unix en chaînes avec un format de date en utilisant la fonction ctime () en C

Dans cet exemple, nous expliquons le processus étape par étape sur la façon d'obtenir le temps Unix, puis utilisons la fonction ctime () pour convertir le nombre de secondes en une chaîne qui est formatée comme la date et l'heure.

Dans l'extrait suivant, Time () obtient le temps Unix_T et l'imprime sur la ligne de commande:

#inclure
#inclure
vide main ()

Time_t Unix_t;
U_time = time (null);
printf ("Unix Time:% ld \ n", u_time);

Dans la langue C, Time_T est une variable définie dans le «temps.En-tête de bibliothèque h ”où certaines des fonctions de temps () renvoient leur résultat.

L'image suivante montre le temps Unix qui est retourné par le temps () dans U_time:

Une fois que nous avons obtenu le temps Unix U_time, Nous devons le convertir au format de date et d'heure des chaînes en utilisant le ctime () fonction. Pour utiliser cette fonction, nous devons d'abord définir un pointeur de type const char * pour la chaîne dans laquelle stocker les résultats. Dans cet exemple, c'est str_ptr et est défini comme suit:

const char * str_ptr;

Pour convertir le temps Unix qui est stocké dans U_time À une chaîne au format DateTime, nous devons appeler ctime (), passer le pointeur qui est juste défini comme l'argument de sortie et l'adresse (&) de U_time Comme argument d'entrée.

Ensuite, nous voyons le code complet de toutes les étapes que nous avons apprises auparavant et la bonne façon d'appeler le ctime (). En utilisant la fonction printf (), nous affichons la chaîne obtenue dans la console de commande:

#inclure
#inclure
vide main ()

time_tu_time; // définir U_time comme sortie du temps ()
const char * str_ptr; // définir le pointeur de chaîne
U_time = time (null); // Nous obtenons le temps UTC dans U_time
str_ptr = ctime (& u_time);
printf ("L'heure locale est:% s \ n", str_ptr);

Pour compiler le code, nous tapons le GCC suivi par le chemin du «.C ”Fichier et -O suivi du nom de la sortie à la ligne de commande:

~ $ Documents GCC / Main.c -o ctime

Pour exécuter, nous tapons ensuite «/» suivis du nom de l'application. Dans ce cas, c'est Ctime:

~ $ ./ ctime

L'image suivante montre la chaîne qui est renvoyée par le ctime () fonction:

Conclusion

Dans ce Indice de linux Article, nous avons expliqué le processus étape par étape sur la façon d'utiliser ctime () Pour récupérer l'heure Unix du système et le convertir en une chaîne au format de date et d'heure.

Dans l'exemple que nous avons exploré, nous avons expliqué en détail comment créer les variables et les pointeurs que vous devez utiliser dans cette fonction. Nous avons également brièvement discuté des fonctions supplémentaires nécessaires dans la bibliothèque «Time» pour traiter et récupérer les données de temps, et les appliquer dans l'exemple. Nous espérons que vous avez trouvé cet article utile. Pour plus de conseils Linux sur la langue C, utilisez le moteur de recherche sur notre site Web.