形参实参的问题,为什么你不教我?

形参实参的问题,请你教教我吧,谢谢。为什么下滑八成是保存到仓库?

“下滑八成是保存到仓库”是什么鬼
形参实参是我上大学后才知道这么个说法的。而不知道这一点完全不影响我编程序。
这只是个说法而已。
比如
void fun(int a, int b) { balabala }
int main()
{
int x, y;
fun(x, y);
}
这里,x y叫做实参,a b叫做形参

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7508248
  • 你也可以参考下这篇文章:编写一个程序,接受一个整数输入,然后显示所有小于或等于该数的素数。
  • 除此之外, 这篇博客: 什么是指针?为什么要用指针?中的 2、为什么要用指针? 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 看下面一段代码

    #include <stdio.h>
    void _swap(int a, int b)
    {
    	int temp=a;
    	a=b;
    	b=temp;
    }
    int main(void)
    {
    	int a=5,b=10;
    	_swap(a,b);
    	printf("a=%d   b=%d",a,b);
    	return 0;
    }
    

    在这里插入图片描述

    在这一段代码运行下来发现,输出的结果a还是等于5,b还是等于10,他们的值并没有交换.

    这是为什么呢?
    从内存的方面分析,main函数的a,b存放在一个地址空间上,而函数中的a和b又是另外一个空间的a,b,并不是main函数中的a,b的地址,只是把他们的值传递过来了,最后进行交换,但是main函数中的a,b并没有发生变化。

    那要交换他们的值就必须用到指针,把他们的地址传递进去就可以经行交换了。

    #include <stdio.h>
    void _swap(int *a,int *b)
    {
    	int temp=*a;
    	*a=*b;
    	*b=temp;
    }
    int main()
    {
    	int a=5,b=10;
    	_swap(&a,&b);
    	printf("a=%d    b=%d\n",a,b);
    	return 0;
    }
    

    在这里插入图片描述

    在这段代码里a,b的值就发生了改变,应为我们对a和b,的地址进从了操作,从而改变了他们的值。

  • 您还可以看一下 千锋老师的什么是云计算? 课程中的 这是我选择云计算的 第一个原因小节, 巩固相关知识点