c语言学习笔记2--指针练习题

指针练习题

实例1:

void fun(int *p)
{
int a = 200;
*p = 100;
p = &a;
}
int main()
{
int x = 0;
int *s = &x;
fun(s);
printf("%d %d\n", x, *s);
return 0;
}

打印结果:100,100
int *p;声明指针变量
*p;指针的指向(指向一个地址)

实例2:

int main()
{
int ar[5] = {12, 23, 34, 45, 56};
int *p = ar;//int *p = &ar[0];
int x = 0;
int y = 0;
x = *p++;//x = 先赋值再++
y = *p;//y =++之后指向的地址
printf("%d%d\n", x, y);//打印结果:12,23
x = ++*p;//x = 先++再赋值
y = *p;//y = x
printf("%d%d\n", x, y);//打印结果:24,24
x = *++p;//x = 先++再赋值
y = *p;//y = x
printf("%d%d\n", x, y);//打印结果:34,34
return 0;
}

后置++的特点:先将值取出进行操作赋值,后自加1
前置++的特点:先自加1,后赋值
想不出来时画图帮助理解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值