0
假设有一个结构在结构中的偏移指针,以及如何组装
struct info{
struct stat information;
char * filename
}
然后我设置的偏移文件名指针
size_t fOffset = offsetof(struct info, filename);
什么现在是fOffset值?
而在SPARC程序集中,我想获取文件名中的实际字符串。这是我迄今写的。参数是信息结构的指针
set fOffset, %l0
ld [%l0], %l1
add %i0, %l1, %l2
ld [%l2], %l2
ldub [%l2], %o0
我想现在%o0会存储字符串,但显然它没有。谁来帮帮我?
偏移量将取决于'struct stat'的定义以及要使用的编译器的实现和/或配置。 – MikeCAT
我不认为这个问题涉及到struct stat,它是关于struct info中的char指针成员 – faker
'fOffset'的值可能是'sizeof(struct stat)' - 可能加上一些填充,但可能不是。您无法在装配中确定该尺寸;你必须知道正确的尺寸 - 或者使用C而不是装配。 –