data_seg
Určuje datový segment inicializována proměnné jsou uloženy v souboru obj.
#pragma data_seg( [ [ { push | pop }, ] [ identifier, ] ] [ "segment-name" [, "segment-class" ] )
Poznámky
Význam těchto termínů segmentu a části jsou zaměnitelné v tomto tématu.
OBJ soubory lze zobrazit dumpbin aplikace.Je výchozím segmentem souboru obj inicializována proměnné .data.Neinicializované proměnné jsou považovány za inicializována na nulu a jsou uloženy v .bss.
data_seg obnoví segment .data bez parametrů.
nabízené(volitelné)
Vloží záznamy vnitřním zásobníku překladače.A push mohou mít identifikátor a název segmentu.POP (volitelné)
Odstraní záznam z horní zásobník kompilátoru.identifikátor (volitelné)
Při použití s push, přiřadí název záznamu v zásobníku kompilátoru.Při použití s pop, POP záznamy vnitřního zásobníku až do identifikátor odstraněny; Pokud identifikátor nebyl nalezen v interním zásobníku nic popped.identifikátor popped jediným více záznamů umožňuje pop příkaz.
"název segmentu"(volitelné)
Název segmentu*.* Při použití s pop, zásobníku je popped a název segmentu stane se aktivní úsek název."segment třída" (volitelné)
Součástí pro kompatibilitu s C++ verze 2.0.Je ignorována.
Příklad
// 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 pomocí data_seg nezachová žádné informace o jeho umístění.
Viz /SECTION seznam názvů byste neměli používat při vytváření oddílu.
Můžete také určit oddíly const proměnných (const_seg), inicializovat data (bss_seg) a funkce (code_seg).