1
7
在堆栈上分配一个大于15字节的数组
我不记得是否分配了
|
2
3
这本来就不应该发生,但要解决这个问题,您可以尝试:
|
3
1
另一个解决方案是,使用padding函数,它首先对齐堆栈,然后调用
代码如下所示:
|
4
0
我已经解决了这个问题。 以下是我的解决方案:
首先,我们将堆栈增加16个字节。其次,我们将最小有效半字节设为0x0。我们使用push/pop操作数保留堆栈指针。我们调用另一个函数,它的所有局部变量都是16字节对齐的。所有嵌套函数也将使其局部变量16字节对齐。 而且有效! |
5
0
很抱歉让一根旧线复活…
对于那些使用比op更新的编译器的人,op提到
对于那些想了解更多的人来说,这篇文章很酷: http://wiki.osdev.org/System_V_ABI |
Namit Patel · 如何将数组作为返回值传递给线程? 6 年前 |
Davi Wesley · 对线程使用参数 6 年前 |
Jay Wang · 生产者/消费者实施:陷入消费者循环 6 年前 |
Razonixx · 从线程内增加全局计数器变量,而不必等待每个线程 6 年前 |
MohammadReza Vahedi · 返回响应后运行函数 6 年前 |
AshR · 程序断断续续地使用main报告与线程本身不同的线程id 7 年前 |
filo · 如何在x86上使用gcc强制执行内存排序 7 年前 |