第1个回答 2010-09-16
和下面的函数的不能是一个样的··
void swap(int p1,int p2)
{int p;
p=p1;
p1=p2;
p2=p;}
只是交换了值而已。。。
同你的那个,只是交换了p1、p2所代表的地址而已,真正的地址不会因此交换的。。
正道还是以改变实参指针变量所指变量的值 。。没办法。。
void swap(int *p1,int *p2)
{int p;
p=*p1;
*p1=*p2;
*p2=p;}
是C++的话,引用是很好的选择。。
void swap(int p1,int p2)
{int p;
p=p1;
p1=p2;
p2=p;}
第2个回答 2010-09-11
其实是可以的,你只需要将那个变量传递到你的函数中区就行了。
定义函数方法:
返回值类型 函数名(形参类型 形参)
{
函数主体;
}
调用方法:
函数名(实参);
例如下面返回两个数中较大值的函数:
int Max(int a,int b)
{
return a>b? a:b;
}
调用时,只需要写成
int t=Max(m,n);
m,n是两个自定义的int型变量,t是m,n中的较大值本回答被网友采纳
第3个回答 2010-09-11
函数内定义的变量叫做局部变量,生存周期一直到函数执行完毕。
你可以用全局变量解决这个问题。
在函数外定义~
第4个回答 2010-09-11
一楼就是答案。你调试一下或者翻一下书不就有了?