c语言关于的指针程序,C语言基础:C语言指针(4) - 补充一点关于指针的小知识

上一节讲解了关于指针的指针, 这次我们来补充多一点点的小知识~~

下面我们来看一个小例子:

#include

int main()

{

double d = 10.5;

double d2 = 10.5;

double *p;

p = &d;

p = &d2;

*p = 10.9;

printf("d=%f, d2=%f\n", d, d2);

return 0;

}

输出的结果:

0818b9ca8b590ca3270a3433284dd417.png

当第一句代码执行完之后, 那么p就指向于d, 也就是说p存的就是d的地址.

p = &d;

当第二句代码执行完后, 那么p就指向于d2, 也就是说p存的就是d2的地址, 而这时候的p与d也就是没有关系了.

p = &d2;

所以当最后一句代码, 所改变的其实就是d2的值, 而d还是原来的值, 所以输出的结果就和图上一样.

p = 10.9;

下面继续来一个例子:

#include

int main()

{

int i = 10;

int *p;

p = &i;

printf("i = %p\n", &i);

printf("p = %p\n", p);

p = NULL;

printf("p = %p\n", p);

return 0;

}

输出结果:

0818b9ca8b590ca3270a3433284dd417.png

当执行完代码后, p存的就是i的地址, 所以输出i和p的地址是相同的, 也就是说p存的就是i的地址, 而执行完最后一句的时候, 那么p的地址就是等于0, 也就说p与i没有关系, 改变了p的值i也不会跟着改变.

这次就到这里了, 下次我们继续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值