C语言指针实现变量交换 - 不用全局变量
如果不想使用全局变量,你可以使用传递指针的方式来实现变量交换。以下是修改后的代码:
#include <stdio.h>
void exchange(int* a, int* b)
{
int c;
c = *a;
*a = *b;
*b = c;
}
int main()
{
int x = 3, y = 4;
printf('Before exchanging: %d, %d\n', x, y);
exchange(&x, &y);
printf('After exchanging: %d, %d\n', x, y);
return 0;
}
在这个修改后的代码中,我们将exchange函数修改为接受指针参数。在函数内部,我们通过解引用操作符*来访问和修改指针所指向的值。
在main函数中,我们声明了两个整数变量x和y,并将它们的地址作为参数传递给exchange函数。
这样,通过传递指针来实现变量交换,而不需要使用全局变量。
希望这个修改后的代码能够解决你的问题。如果你还有任何疑问,请随时提问。
原文地址: https://www.cveoy.top/t/topic/dh19 著作权归作者所有。请勿转载和采集!