저장소 클래스

함수는 함수 정의에 저장소 클래스 지정자를를 제공 extern 또는 정적 저장소 클래스가 있습니다.

구문

  • 함수 정의:
    선언 지정자 선택특성 seq 수신 동의선언 자 선언 목록 수신 동의복합 문

    / * 특성이 seq Microsoft 관련 된 * /

  • 선언 지정자:
    저장소 클래스 지정자 선언 지정자 선택

    형식 지정 자가 선언 지정자 선택

    형식 한정자 선언 지정자 선택

  • 저장소 클래스 지정자: / * 함수가 정의 * /
    extern

    static

함수 정의 포함 하지 않는 경우는 저장소 클래스 지정자, 스토리지 클래스의 기본값 extern.함수로 명시적으로 선언할 수 있습니다 extern, 하지만 필요 하지 않습니다.

함수의 선언에 포함 된 경우는 저장소 클래스 지정자extern, 파일 범위 식별자의 모든 보이는 선언과 동일한 링크 식별자가 있습니다. 없음 표시 선언의 파일 범위를 경우 식별자 외부 링크가 있습니다.식별자는 파일 범위 및 없음 있으면 저장소 클래스 지정자, 외부 링크 식별자가 있습니다.외부 링크를 각 인스턴스 식별자의 동일한 객체 또는 함수를 나타내는 것입니다.참조 하십시오 수명, 범위, 가시성 및 링크 링크와 파일의 범위에 대 한 자세한 내용은.

저장소 클래스 지정자를 아닌 다른 함수 선언이 블록 범위 extern 오류를 생성 합니다.

함수를 정적 저장소 클래스는 정의 된 소스 파일에만 표시 됩니다.다른 모든 함수, 지정 된 여부 extern 저장소 클래스를 명시적으로 또는 암시적으로 표시 됩니다 프로그램의 모든 소스 파일에 걸쳐 있습니다.경우 정적 저장소 클래스가 필요는 맨 처음 발견 되는 함수에 선언 (있는 경우)와 함수 정의에 선언 해야 합니다.

Microsoft 전용

Microsoft 확장을 사용 하는 경우 함수는 원래 없으면 저장소 클래스를 선언 (또는 extern 저장소 클래스) 부여 됩니다 정적 저장소 클래스 함수 정의 같은 소스 파일에 있는 경우 및 정의 명시적으로 지정 하는 경우 정적 저장소 클래스입니다.

/Ze 컴파일러 옵션으로 컴파일하는 경우 함수 선언 사용 하는 블록 내에서 extern 키워드 한 글로벌 가시성./Za를 컴파일하는 경우 그렇지 않습니다.소스 코드의 이식성을 고려해 야 하는 경우이 기능에 의존해 서지 않습니다.

Microsoft 특정 끝

참고 항목

참조

C 함수 정의