实现交换数字
- 主要是理解指针类型如何传递
- 函数调用时怎样初始化两个变量指针
上代码(理解注释)
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include<math.h>
#include<time.h>
#include<Windows.h>
void change(int* x, int* y) {//不用返回,直接拿到int* 类型的i和j的地址赋给int*类型的x和y
int tmp = *x;//*为取x(i的地址)内的内容,就是直接用i进行操作,下同
*x = *y;
*y = tmp;//实现交换
}
int main()
{
int i=10, j=20;
printf("init i = %d,j = %d\n",i,j);
change(&i, &j);//需要直接交换,必须取到他们的储存地址
printf("changed i = %d,j = %d",i,j);
system("pause");
return 0;
}