一、指针不能直接相加减,指针是地址,加减之后没有意义。指针与指针之间只能替换
例如:
int *p1,*p2,p;
p=p1;
p1=p2;
p2=p;
二、在C语言中取得一个变量的地址使用&这个符号,&
叫取地址运算符,比如一个变量int a, &a
就是取得变量a所存放的地址。
三、p
代表的是地址,*p
则代表这个地址中存放的内容。
四、例题 利用只利用两个指针进行最大值最小值输出
答案:
#include <stdio.h>
int main()
{
int *pmax, *pmin, a = 10, b = 20;
pmax = &a;
pmin = &b;
if (a < b)
{
pmax=&b;
pmin=&a;
}
printf("a=%d, b=%d\n", a, b);
printf("最大值=%d, 最小值=%d\n", *pmax, *pmin);
return 0;
}
输出结果
a=10,b=20
最大值=10 最小值=20