Blog Archive

Monday, July 18, 2011

__FILE__, __LINE_, __FUNCTION__, __DATE__, __TIME__,__TIMESTAMP__

Q: What are '__FILE__' and '__LINE__'?

A: '__FILE__' and '__LINE__' are predefined macros and part of the C/C++ standard. During preprocessing, they are replaced respectively by a constant string holding the current file name and by a integer representing the current line number.

There are other preprocessor variables including:
  • '__DATE__' -> a string literal of the form "Mmm dd yyyy"
  • '__TIME__' -> a string literal of the form "hh:mm:ss"
  • '__TIMESTAMP__' -> a string literal of the form "Mmm dd yyyy hh:mm:ss"
  • '__FUNCTION__' -> a string literal which contains the function name (this is part of C99, the new C standard and not all C++ compilers support it)

No comments:

Post a Comment