⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 函数 同名变量.cpp

📁 我正在学习C编程
💻 CPP
字号:
/**/
#include<stdio.h>          //导入包含I/O函数的头文件stdio.h    

 
void f1()                  //定义被调函数f1(),无返回值,无参数
{
	int x=10,y=20;
	printf("  在f1()函数中,   x的值=%d, y的值=%d\n",x,y);
}	
void f2()                  //定义被调函数f2(),无返回值,无参数
{
	int x=30,y=40;
	printf("  在f2()函数中,   x的值=%d, y的值=%d\n",x,y);
}	
int add(int x,int y)       //定义被调函数add(),返回整型值,整型形参
{
	return x+y;            //返回x+y的值回主调函数
}
void f31(int x,int y)      //定义被调函数f31(),无返回值,整型形参.实参值单向传与形参,形参运算后其值不传回实参
{
	int temp;
	temp=y;y=x;x=temp;     //只是函数内的x值与y值交换,与主调函数的x与y无关
}
void f32(int *x,int *y)    //定义被调函数f32(),无返回值,整型形参指针获得实参中的地址值
{
	int temp;
	temp=*y;*y=*x;*x=temp; //被调函数内x值与y值交换,等同于主调函数的x值与y值交换
}
void f4(int *x,int *y)
{
	(*x)++; //自加1
	(*y)--; //自减1
}
void main()  //主函数
{
	printf("\n\t\t函数同名变量的使用:\n\n");
	printf("  被调函数内声明的局部变量与 main()函数中的同名变量互不干扰\n\n");
	f1();    //调用f1()函数
	f2();    //调用f2()函数
	int x=50,y=60,z,*px=&x,*py=&y;
	printf("\n  main()函数中调用被调函数前,  x的值=%d, y的值=%d\n",x,y);
	z=add(x,y);
	printf("  main()函数中调用add()函数后, 获得返回值为 x+y=%d\n",z);
	f4(px,py);
	printf("  main()函数中调用f4() 函数后, x的值=%d, y的值=%d. 实参中地址值传与形参,实参值改变即为形参值改变\n",x,y);
	x=50,y=60;
	f31(x,y); 
	printf("  main()函数中调用f31()函数后, x的值=%d, y的值=%d. 实参值单向传与形参,被调函数内的x值与y值交换后,形参值不传回给主调函数的实参\n",x,y);
	f32(&x,&y); 
	printf("  main()函数中调用f32()函数后, x的值=%d, y的值=%d. 实参中地址值传与形参,被调函数内的x值与y值交换,即为主调函数的x值与y值交换\n",x,y);
	
	


	printf("\n\tOK!\n");
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -