no swim no life

표준안 및 호환성 지정 매크로 본문

work/fundamental

표준안 및 호환성 지정 매크로

달려간다 2009. 1. 31. 12:39

__STRICT_ANSI__ : ANSI C 규격으로 작동 (-ansi)
_ISOC99_SOURCE : C99 표준을 지원 (-std=c99)
_POSIX_SOURCE : POSIX 표준을 의미,

  • == 1 : _POSIX_SOURCE
  • >= 2 : _POSIX_SOURCE + IEEE std 1003.2
  • >= 199309L : IEEE std 1003.1a-1993
  • >= 199506L : IEEE std 1003.1b-1995
  • >= 200112L : IEEE std 1003.1-2001

_XOPEN_SOURCE : POSIX와 XPG 4.2(SUSv1) 표준 지원

  • < 500
  • == 500 : SUSv2(UNIX98)
  • == 600 : SUSv3(SUS2002)

_XOPEN_SOURCE_EXTENDED : X/OPEN 확장 표준 모두 지원
_LARGEFILE_SOURCE : 대용량 파일 지원(LFS)을 위한 함수 사용
_LARGEFILE64_SOURCE : 64 bit 파일 처리 가능
_FILE_OFFSET_BITS=N : 기본 파일 오프셋을 N bit로 맞춤
_BSD_SOURCE : ISO C, POSIX, 4.3BSD 표준
_SVID_SOURCE : ISO C, POSIX, SVID 표준
_GNU_SOURCE : 위의 모든 표준을 지원 + GNU 확장 지원
_REENTRANT : reentrant 함수의 사용
_THREAD_SAFE : _REENTRANT와 동일

Comments