void swap(int *a, int *b) { int temp; temp = *a; *a = *b; *b = temp; } 用的时候 需要传地址 int a = 7, b = 8; 调用 swap(&a, &b); &a &b 取得是 变量a, b的地址void swap(int *a, int *b) 函数里的形参 int *a, int *b 是定义 形参为 指针类型 指针 和 地址的关系 好好理理
这是规定,你也可以定放一程编程语言叫:yzpzj C/C++这门语言中如下定义swap函数void swap(int a, int b) { int temp; temp = a; a = b; b = temp; }int main() { int a = 7, b = 8; swap(a, b); printf("%d, %d\n", a, b); return 0; }输出结果: 8, 7看到没有?上面的yzpzj C/C++版swap函数根本没有用到 * 和 &, 这种语言简单多了吧?
void swap(int *a, int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}
用的时候 需要传地址
int a = 7, b = 8;
调用
swap(&a, &b);
&a &b 取得是 变量a, b的地址void swap(int *a, int *b) 函数里的形参 int *a, int *b 是定义 形参为 指针类型
指针 和 地址的关系 好好理理
{
int temp;
temp = a;
a = b;
b = temp;
}int main()
{
int a = 7, b = 8; swap(a, b);
printf("%d, %d\n", a, b); return 0;
}输出结果:
8, 7看到没有?上面的yzpzj C/C++版swap函数根本没有用到 * 和 &, 这种语言简单多了吧?