다음을 통해 공유


data_seg

데이터 세그먼트 초기화 변수.obj 파일에 저장 되는 위치를 지정 합니다.

#pragma data_seg( [ [ { push | pop }, ] [ identifier, ] ] [ "segment-name" [, "segment-class" ] )

설명

계약의 의미 세그먼트 및 섹션 이 항목에서 사용 가능 합니다.

OBJ 파일을 볼 수 있는 dumpbin 응용 프로그램입니다.기본 세그먼트 초기화 변수를.obj 파일에.data입니다.초기화 되지 않은 변수를 0으로 초기화 되어야 간주 되 고 저장 됩니다 .bss.

data_seg 매개 변수 없이.data에 세그먼트를 다시 설정 합니다.

  • 밀어넣기(옵션)
    레코드는 내부 컴파일러 스택에 배치 됩니다.A 밀어넣기 가질 수 있는 식별자세그먼트 이름을.

  • pop (옵션)
    내부 컴파일러 스택 위쪽에서 레코드를 제거합니다.

  • 식별자 (옵션)
    와 함께 사용할 때 밀어넣기, 내부 컴파일러 스택 레코드 이름을 할당 합니다.함께 사용 하면 pop, 레코드까지 내부 스택에서 팝 식별자 제거 됩니다. 경우 식별자 찾을 수 없는 내부 스택에 아무것도 팝 됩니다.

    식별자 여러 레코드는 팝 있습니다 pop 명령.

  • "세그먼트 이름"(옵션)
    세그먼트 이름을*.* 함께 사용 하면 pop, 스택에서 팝 되 고 세그먼트 이름 을 역동적인 이름이 됩니다.

  • "세그먼트 클래스" (옵션)
    버전 2.0 이전에 C++와의 호환성을 위해 포함 됩니다.무시 됩니다.

예제

// pragma_directive_data_seg.cpp
int h = 1;                     // stored in .data
int i = 0;                     // stored in .bss
#pragma data_seg(".my_data1")
int j = 1;                     // stored in "my_data1"

#pragma data_seg(push, stack1, ".my_data2")   
int l = 2;                     // stored in "my_data2"

#pragma data_seg(pop, stack1)   // pop stack1 off the stack
int m = 3;                     // stored in "stack_data1"

int main() {
}

데이터를 사용 하 여 할당 data_seg 의 위치에 대 한 정보를 유지 하지 않습니다.

참조 /SECTION 를 사용 하면 안 섹션을 만들 때 이름 목록을 합니다.

절에는 const 변수를 지정할 수도 있습니다 (const_seg), 초기화 되지 않은 데이터 (bss_seg), 및 함수 (code_seg).

참고 항목

참조

Pragma 지시문과 __Pragma 키워드