Dans le cadre de la norme C++, il existe des macros prédéfinies que vous pouvez utiliser. Section 16.8 du standard C++ définit, entre autres choses, l' __LINE__
macro.
__LINE__
: Le nombre de ligne de la source de courant de ligne (une décimale
constante).
__FILE__
: Le présumé nom du fichier source (une chaîne de caractères
littérale).
__DATE__
: La date de la traduction du fichier source (une chaîne de caractères
littéral...)
__TIME__
: Le temps de la traduction du fichier source (une chaîne de caractères
littéral...)
__STDC__
: Si__STDC__
est prédéfini
__cplusplus
: Le nom de l' __cplusplus
est défini à la valeur 199711L quand
la compilation en C ++ de l'unité de traduction
Ainsi, votre code serait:
if(!Logical)
printf("Not logical value at line number %d \n",__LINE__);