如题,C语言在函数间传递参数时,形参的变化是不会改变实参的值的!!!
如:
include<stdio.h>
void main(){
}
void swap(int a,int b){
}
因为形参与实参的内存单元不同,所以,只是值传递,并不能直接进行值修改。
为此,有两种方法可以解决这个问题:
一个是传递指针,另一个是用return返回值到该变量。
传递指针:
void main(){
}
void swap(int * a,int * b){
}
使用return返回值:
因为此处定义了两个变量,C语言并不支持多值返回,所以可以返回指针,具体可以是返回结构体,或者是数组。
返回结构体:
struct test{
};
void main(){
}
struct test swap(int a,int b){
}
返回数组指针:
void main(){
}
int * swap(int a,int b){
}