这个问题???????????

来源:百度知道 编辑:UC知道 时间:2024/05/01 05:09:34
fun(x);
intx[];
{int t;t=x[0];x[0]=x[1];x[1]=t;}
void main(){
int a=[1,2];
fun(a);
printf("%d",a[0]);
printf("%d",a[1]);}
*****************************************************************
#include"stdio.h"

void fun1(int x,int y){

int tmp; tmp=y; y=x; x=tmp;

}

void main(){
int x,y; x=10; y=20;
fun1(10,20);
printf("x=%d\n",x);
printf("y=%d\n",y );
}

这2个程序一个值交换了,另一个没有交换

是不是地址传递能改变值 而值传递不能改变值呢

请详细说明一下

地址传递能改变值 而值传递不能改变值

请你唔好问同样嘅问题两次,唔该晒!

而且我一D都睇唔出你贴嘅代码同你要问嘅问题有乜嘢关系嘅啵!喺第一个程序,佢哋嘅值就算交换咗又点样啊?唔系因为你将嗰printf放入咗俾调用函数里边咩?

唔该你睇清楚D书先嚟问啦!