是为了兼容 32 位吗?
代码
int printf_param(int a, int b, int c, int d, int e, int f)
{
return a+b+c+d+e+f;
}
int main()
{
return printf_param(1, 2, 3, 4, 5, 6);
}
汇编
main:
push rbp
.seh_pushreg rbp
mov rbp, rsp
.seh_setframe rbp, 0
sub rsp, 48
.seh_stackalloc 48
.seh_endprologue
call __main
mov DWORD PTR 40[rsp], 6
mov DWORD PTR 32[rsp], 5
mov r9d, 4
mov r8d, 3
mov edx, 2
mov ecx, 1
call printf_param
add rsp, 48
pop rbp
ret
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.