Utiliser les constantes __file__,__line__,__date__ et __time__ (compilé avec g++ sous linux)

Contenu du snippet

Le code montre comment utiliser plusieurs constantes:
__FILE__ : affiche le nom du fichier source.
__LINE__ : affiche le numéro de la ligne atteinte
__DATE__ : affiche la date de compilation du code source
__TIME__ : affiche l'heure de compilation de la source

L'intêret de ces constantes est bien sûr d'afficher des informations relatives a votre programme mais aussi de faciliter la correction de votre code grâce a la contante __LINE__ qui vous permet de savoir ou vous en êtes rendu dans le programme ainsi vous pourrez trouver vers quelle ligne se trouve l'erreur.

Source / Exemple :


#include<iostream.h>
#include<stdio.h>

int main(void)
{
cout << "Le programme " << __FILE__ << " est en cours d'édition" << endl;
cout << "Ligne " << __LINE__ << " atteinte." << endl;

#line 50 "Monprogramme.cpp"
cout << "Le programme " << __FILE__ << " est en cours d'édition" << endl;
cout << "Ligne " << __LINE__ << " atteinte." << endl;
cout << "La date et l'heure de la dernière compilation remontent est: " << __DATE__ << " " << __TIME__ << endl;
return 0;
}

Conclusion :


Bon la constante #line 50 "Monprogramme.cpp" sert a changer le numéro de la ligne courante, la contante __LINE__ 2 lignes plus loisn prendra donc la valeur 52. La constante __FILE__ elle stockera la chaine Monprogramme.cpp

Bon, ce code devrait se compiler avec la plupart des compilateurs, personnelement j'ai utilisé g++ sous linux, je rappel la syntaxe pour compiler le programme.
g++ -c prog.cpp //pour générer le .obj
g++ prog.o -o prog //pour générer l'executable
puis pour lancer le prog.
./prog

Voilà, si vous avez des questions, remarques ou critiques écrivez moi!

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.