一级指针为了改变该指针指向的变量内容。
置换函数的实现:
#include<stdio.h>
int swap(int *a, int *b)
{
*a = *a ^ *b;
*b = *a ^ *b;
*a = *a ^ *b;
}
int main(int argc, char **argv)
{
int a = 10, b = 30;
swap(&a,&b);
printf("a=%d b=%d\n", a, b);
return 0;
}
结果 a=30 b=10
二级指针为了改变该指针指向的变量的指向。
改变p指针所指的方向。
#include<stdio.h>
int change(char **l)
{
char *str = "Hello, World!";
*l = str;
}
int main(int argc, char **argv)
{
char *p = NULL;
change(&p);
printf("%s\n",p);
return 0;
}
结果:Hello,World!