首先对于“&”和"*"运算符进行再次说明:
示例:
前提pointer_1=&a
(*pointer_1)++相当于a++
注意括号是必要的,如果没有括号就成为了
*pointer_1++,其中++和 ✳为同一优先级,而方向为自右向左,因此它相当于
*(pointer_1++)
简单指针应用:
输入a,b两个整数,按先大后小的顺序输出a和b。
代码示例:
#include<stdio.h>
void fun(int *p,int *l);
int main()
{
int *p,*m,a,b;
printf("请输入两个整数:\n");
scanf("%d%d",&a,&b);
p=&a;
m=&b;
if(a<b)
{
fun(p,m);
}
printf("\n%d,%d\n",a,b);
}
void fun(int *p,int *l)
{
int ben;
printf("我在交换中.....");
ben=*p;
*p=*l;
*l=ben;
}
此段代码目的时熟悉运算符&和✳
一个错点
就是在做比较的时候
不能写成if(p>l)
得加取值符号if(*p>*l)。