C 키워드C Keywords

"키워드"는 C 컴파일러에서 특별한 의미를 가진 단어입니다."Keywords" are words that have special meaning to the C compiler. 7번째 및 8번째 변환 단계에서는 식별자가 C 키워드와 같은 철자 및 대/소문자를 사용할 수 없습니다.In translation phases 7 and 8, an identifier cannot have the same spelling and case as a C keyword. 자세한 내용은 전처리기 참조변환 단계 설명을 참조하세요. 식별자에 대한 자세한 내용은 식별자를 참조하세요. C 언어는 다음의 키워드를 사용합니다.(See a description of translation phases in the Preprocessor Reference; for information on identifiers, see Identifiers.) The C language uses the following keywords:

autoauto doubledouble intint structstruct
breakbreak elseelse longlong switchswitch
casecase enumenum registerregister typedeftypedef
charchar externextern returnreturn unionunion
constconst floatfloat shortshort unsignedunsigned
continuecontinue forfor signedsigned voidvoid
defaultdefault gotogoto sizeofsizeof volatilevolatile
dodo ifif staticstatic whilewhile

키워드는 재정의될 수 없습니다.You cannot redefine keywords. 그러나 컴파일 전에 C 전처리기 지시문을 사용하여 키워드를 대체할 텍스트를 지정할 수 있습니다.However, you can specify text to be substituted for keywords before compilation by using C preprocessor directives.

Microsoft 전용Microsoft Specific

ANSI C 표준을 사용하면 두 개의 선행 밑줄이 쳐진 식별자를 컴파일러의 구현용으로 예약할 수 있습니다.The ANSI C standard allows identifiers with two leading underscores to be reserved for compiler implementations. 따라서 Microsoft 규칙은 이중 밑줄이 쳐진 Microsoft 전용 키워드 이름 앞에 있게 됩니다.Therefore, the Microsoft convention is to precede Microsoft-specific keyword names with double underscores. 이들 단어는 식별자 이름으로 사용할 수 없습니다.These words cannot be used as identifier names. 두 개의 밑줄을 사용하는 경우를 포함하여 명명 식별자의 ANSI 규칙에 대한 자세한 내용은 식별자를 참조하세요.For a description of the ANSI rules for naming identifiers, including the use of double underscores, see Identifiers.

Microsoft C 컴파일러에서 다음 키워드 및 특수 식별자가 인식됩니다.The following keywords and special identifiers are recognized by the Microsoft C compiler:

__asm__asm dllimport2dllimport2 __int8__int8 naked2naked2
__based1__based1 __except__except __int16__int16 __stdcall__stdcall
__cdecl__cdecl __fastcall__fastcall __int32__int32 thread2thread2
__declspec__declspec __finally__finally __int64__int64 __try__try
dllexport2dllexport2 __inline__inline __leave__leave
  1. __based 키워드의 경우 32 비트 및 64 비트 대상 컴파일에서 제한적으로 사용됩니다.The __based keyword has limited uses for 32-bit and 64-bit target compilations.

  2. 이들은 __declspec과 함께 사용되는 특수 식별자이며 다른 컨텍스트에서의 사용은 제한되지 않습니다.These are special identifiers when used with __declspec; their use in other contexts is not restricted.

    Microsoft 확장은 기본적으로 사용하도록 설정됩니다.Microsoft extensions are enabled by default. 프로그램이 완전하게 이식 가능하도록 하려면, 컴파일하는 동안 /Za 옵션(ANSI 호환을 위한 컴파일)을 지정하여 Microsoft 확장을 사용하지 않도록 설정할 수 있습니다.To ensure that your programs are fully portable, you can disable Microsoft extensions by specifying the /Za option (compile for ANSI compatibility) during compilation. 이렇게 하면 Microsoft 관련 키워드를 사용할 수 없습니다.When you do this, Microsoft-specific keywords are disabled.

    Microsoft 확장을 사용하면 위에 나열된 키워드를 프로그램에서 사용할 수 있습니다.When Microsoft extensions are enabled, you can use the keywords listed above in your programs. ANSI 규격에 따라 이러한 키워드의 대부분에는 두 개의 밑줄이 앞에 옵니다.For ANSI compliance, most of these keywords are prefaced by a double underscore. 네 가지 예외 사항인 dllexport, dllimport, nakedthread__declspec과 함께 사용되므로 선행 밑줄이 필요하지 않습니다.The four exceptions, dllexport, dllimport, naked, and thread, are used only with __declspec and therefore do not require a leading double underscore. 이전 버전과의 호환성을 위해 나머지 키워드에는 밑줄 한 개가 옵니다.For backward compatibility, single-underscore versions of the rest of the keywords are supported.

    Microsoft 전용 종료END Microsoft Specific

참고 항목See Also

C 요소Elements of C