如何获取结构的长度? (NASM)

问题描述 投票:0回答:1

如果我定义这样的结构:

section .bss
    struc mystruc
        .x: resb 1
        .y: resb 1
    endstruc

如何获得结构的长度?

assembly struct nasm
1个回答
0
投票

endstruc
定义了一个结构名称
_size
常量,准确地说是一个
equ
常量(即不可变)。 大小以字节为单位。 因此,在您的情况下
mystruc_size
评估为
2

要在宏定义上下文中获取

struc
的大小,请使用
%+
连接运算符
。 这是一个用于演示的虚拟宏定义:

define get_struc_size(struc_type_name) (struc_type_name%+_size)
© www.soinside.com 2019 - 2024. All rights reserved.