data_seg
指定初始化的变量在 .obj 文件中存储的数据段。
#pragma data_seg( [ [ { push | pop }, ] [ identifier, ] ] [ "segment-name" [, "segment-class" ] )
备注
术语 段 和 部分的 含义可互换本主题。
OBJ 文件可以使用 DUMPBIN 应用程序视图。 在 .obj 文件的默认段初始化的变量的是 .data。 未初始化的变量。 bss 视为初始化为零和存储
没有参数的data_seg 重置段到 .data。
push(可选)
在内部编译器堆栈上将记录置于。 push 可以具有 标识符 和 段落名称。pop (可选)
从内部编译器堆栈的顶部移除记录。标识符 (可选)
当使用 push,分配名称在内部编译器堆栈的记录。 当使用 pop,普遍音乐记录内部堆栈,直到移除 标识符 ;如果 标识符 在内部堆栈中未找到,没有弹出。标识符 使多个记录弹出与单个 pop 命令。
“段名称”(可选)
段的名称*。*当使用 pop,堆栈弹出,并且 段名称 是事件段名称。“段类” (可选)
包括用于 C++ 的兼容性在 2.0 版之前。 将忽略此参数。
示例
// 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_seg),未初始化的数据 (bss_seg) 和功能 (code_seg) 还指定部分。