C语言ab互换

Python019

C语言ab互换,第1张

第一个传递的是值,就是说将实参的值赋值给形参了,就相当于int a,ba=ba的值改变了,并不影响b的值。

第二个传递的是地址,数组名表示的就是数组的首地址,所以形参 char a[] 其实就是 char *a

将实参的地址赋值给 a了,所以形参改变了,实参也改变了。

这就相当于 int aint *p =&a 如果 *p发生了变化,a的值也跟着发生变化。

#include<stdio.h>

int main()

{ int a,b,t

  scanf("%d%d",&a,&b)

  printf ("a=%d b=%d\n",a,b)

  t=a

  a=b

  b=t

  printf ("a=%d b=%d\n",a,b)

  return 0

}