bss_seg

指定區段未初始化的變數儲存在.obj 檔中的位置。

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

備註

調換 Obj 檔案可以檢視與 dumpbin 應用程式。未初始化的資料的.obj 檔中的預設區段是.bss。在某些情況下使用的 bss_seg 可以加快載入時間分組到某一區段的 [未初始化的資料。

bss_seg 不含任何參數重區段設為.bss。

  • 推入(可省略)
    編譯器內部堆疊上放一筆資料錄。A 推入識別項區段名稱

  • pop (可省略)
    編譯器內部堆疊的頂端會移除資料錄。

  • 識別項 (可省略)
    搭配使用時推入,將名稱指派給內部編譯器堆疊上的資料錄。搭配使用時 pop,取出記錄之前內部堆疊 識別項會被移除。 如果識別項中找不到內部堆疊中,執行任何動作被取出。

    識別項 可讓取出,以單一的多筆記錄 pop 指令。

  • "區段名稱"(可省略)
    區段名稱*.* 搭配使用時 pop,堆疊取出,並 區段名稱會變成使用中的區段名稱。

  • 「 區段類別 」 (可省略)
    包含 C++ 之前至 2.0 版本的相容性。它會被忽略。

範例

// pragma_directive_bss_seg.cpp
int i;                     // stored in .bss
#pragma bss_seg(".my_data1")
int j;                     // stored in "my_data1"

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

#pragma bss_seg(pop, stack1)   // pop stack1 from stack
int m;                     // stored in "stack_data1"

int main() {
}

您也可以指定區段的初始化的資料 (data_seg),函式 (code_seg),和常數的變數 (const_seg)。

配置使用的資料 bss_seg pragma 不保留它的位置的任何資訊。

請參閱 /SECTION 為一系列建立區段時,應該不會使用您的名稱。

請參閱

參考

Pragma 指示詞 」 和 「 __Pragma 關鍵字