1.简单的交换两个数字。
# include <stdio.h>
int main(void)
{
int a = 3;
int b = 5;
int t;
t =a;
a = b;
b = t;
printf("a = %d, b = %d\n", a, b);
return 0;
}
2.不能完成互换的例子。
# include <stdio.h>
//不能完成互换功能
void huhuan(int a, int b)
{
int t;
t = a;
a = b;
b = t;
return;
}
int main(void)
{
int a = 3;
int b = 5;
huhuan(a, b); //因为这里a,b是修改huhuan函数里的值。但是在main函数里a,b值没变。
printf("a = %d, b = %d\n", a, b);
return 0;
}
3.运行结果同2一样。
# include <stdio.h>
//不能完成互换功能
void huhuan(int * p, int * q)
{
int * t; //如果要互换p和q的值,则t必须是int *,不能是int,否则会出错。
t = p;
p = q;
q = t;
}
int main(void)
{
int a = 3;
int b = 5;
huhuan(&a, &b); //huhuan(*p, *q)是错误的,huhuan(a, b)也是错误的
printf("a = %d, b = %d\n", a, b);
return 0;
}
3.可以完成互换的例子。
# include <stdio.h>
void huhuan(int * p, int * q)
{
int t; //如果要互换*p和*q的值,则t必须定义成int,不能定义成int *,否则会报错。
t = *p; //p是int *,*p是int
*p = *q;
*q = t;
}
int main(void)
{
int a = 3;
int b = 5;
huhuan(&a, &b); //huhuan(*p, *q)是错误的,huhuan(a, b)也是错误的
printf("a = %d, b = %d\n", a, b);
return 0;
}
本博主新开公众号, 希望大家能扫码关注一下,十分感谢大家。