小编qwe*_*_99的帖子

mmap中的偏移量有什么用?

我在操作系统课上时不时遇到这个问题,但教授没有解释它,我在网上也找不到确切的解释。中的偏移量到底有什么用mmap?这也是针对linux的

谢谢

c linux operating-system mmap offset

1
推荐指数
1
解决办法
3208
查看次数

鉴于前两个参数是动态数组,如何访问函数的最后一个参数的值?

C中的函数是

void f(int* out, int* in, int nbElements){
    // do stuff
}
Run Code Online (Sandbox Code Playgroud)

由于int nbElements是第一个被压入堆栈in并且out具有可变大小,我如何访问 的值nbElements?据我了解,堆栈看起来像这样:

          esp
          ebp
     return address         # -4(%ebp) 
1st element of int* out     # -8(%ebp)
1st element of int* in      # (%ebp - 8 - 4*nbElements)
      nbElements            # not sure how I can access the value of this
Run Code Online (Sandbox Code Playgroud)

那么如何在nbElements不知道其地址的情况下访问的值呢?

x86 assembly gnu-assembler calling-convention att

0
推荐指数
1
解决办法
55
查看次数