[지식/팁] [C/C++ 언어] __DATE__, __TIME__, __FILE__, __LINE__
ANSI C 에는 미리 정의된 5개의 매크로가 있고, 항상 사용가능하며, #undef 가 안된다.
__DATE__ 매크로가 치환되는 순간의 날짜 (문자열)
__TIME__ 매크로가 치환되는 순간의 시간(문자열)
__FILE__ 매크로가 치환되는 순간의 소스파일의 경로와 이름(문자열)
__LINE__ 매크로가 치환되는 순간의, 매크로의 LINE번호 (정수형)
빈줄도 센다. 즉 코드 레벨에서 세는것이므로, 의미 따윈 두지 않고 모두 카운팅 한다.
__STDC__ Standard C를 comply 하는가 (1 or 0 )
__FUNCTION__ 하위 호환성을 위해 제공되는 것이고, c99 을 지원하는 컴파일러에서는 __func__ 도 쓸 수 있다. 물론, __func__ 는 변수다