C++中函数参数如何传递给函数
情况一
/* ************************************************************************
> File Name: test.cpp
> Author: niu0217
> Created Time: Sun 04 Feb 2024 08:12:19 PM CST
> Description:
************************************************************************/
#include<iostream>
using namespace std;
int myfunc(int a, int b, int c, int d, int e, int f) {
a = 10;
b = 20;
c = 30;
d = 40;
e = 50;
f = 60;
return 100;
}
int main()
{
int a = 0;
int b = 0;
int c = 0;
int d = 0;
int e = 0;
int f = 0;
myfunc(a, b, c, d, e, f);
return 0;
}
调试:
In file: /home/ubuntu/Dev/My优快云/test.cpp
24 int b = 0;
25 int c = 0;
26 int d = 0;
27 int e = 0;
28 int f = 0;
► 29 myfunc(a, b, c, d, e, f);
30 return 0;
31 }
pwndbg> disassemble
Dump of assembler code for function main():
0x00005555555551b6 <+0>: endbr64
0x00005555555551ba <+4>: push rbp
0x00005555555551bb <+5>: mov rbp,rsp
0x00005555555551be <+8>: sub rsp,0x20
0x00005555555551c2 <+12>: mov DWORD PTR [rbp-0x18],0x0 #a
0x00005555555551c9 <+19>: mov DWORD PTR [rbp-0x14],0x0 #b
0x00005555555551d0 <+26>: mov DWORD PTR [rbp-0x10],0x0 #c
0x00005555555551d7 <+33>: mov DWORD PTR [rbp-0xc],0x0 #d
0x00005555555551de <+40>: mov DWORD PTR [rbp-0x8],0x0 #e
0x00005555555551e5 <+47>: mov DWORD PTR [rbp-0x4],0x0 #f
=> 0x00005555555551ec <+54>: mov r8d,DWORD PTR [rbp-0x4]
0x00005555555551f0 <+58>: mov edi,DWORD PTR [rbp-0x8]
0x00005555555551f3 <+61>: mov ecx,DWORD PTR [rbp-0xc]
0x00005555555551f6 <+6