引用输入参数【2】

    引用做输入参数,push的时候push的是其地址值。


#include <stdio.h>


int su_1(int & a_, int b_)
{
	int c;
	c=a_+b_;
	return c;
}
struct AA{
int aa; 
int bb;
};
typedef AA TYPE;

TYPE su_3(TYPE a_, TYPE b_)
{
	TYPE c;
	c.aa=a_.aa+b_.aa;
	c.bb=a_.bb+b_.bb;
	return c;
}

int main()
{
	//TYPE a={100,200};
	//TYPE b={300,400};

	//TYPE c;
	//c=su_3(a,b);
	int a=1;
	int b=2;
	int c=su_1(a,b);
	return 0;
}

su_1有一个引用参数。

调用函数时:



函数内部:

引用输入参数【2】_第1张图片


先把地址值送到eax寄存器,再取地址值对应的int变量值到ecx,再进行加法计算。


你可能感兴趣的:(引用输入参数【2】)