C语言指针(一) ----by xhxh

指针是C语言区别于其他语言最精华的部分,通过指针,可以简化一些 C语言编程任务的执行,还有一些没有指针无法执行,如动态分配内存。

地址概念的引入

在生活当中,我们常常和“地址”打交道,如,我们第一次去xx超市,我们有两种方法,一是通过“xx超市”这个名字一路问路问过去,二是通过手机地图导航过去,在导航时,有一个明显的、也是最重要的东西,即地址,假设“xx超市”在“xxxxxx北京路108号”。同样的,在C语言中,访问某一变量也有两种方式,一是通过变量名访问,二是通过地址访问。在C语言中,每一个变量都有一个内存位置,每一个内存位置都定义了可使用 & 运算符访问的地址,它表示了在内存中的一个地址。
1.通过变量名访问变量

#include <stdio.h>

int main()
{
	
	int x = 156;
    printf("x的值为 : %d\n",x);//通过变量名x访问变量156
    printf("x的地址为 : %p\n",&x);
    return 0;
}

第二行不同电脑运行结果不一样,一样也不必惊讶
0060FEFC就是156这一变量在此计算机上被分配的内存地址

2.通过地址访问变量

#include <stdio.h>

int main()
{
	
	int x = 156;
    printf("x的值为 : %d\n",x);//通过变量名x访问变量156
    printf("x的地址为 : %p\n",&x);
    printf("x的值为 : %d\n",*(&x));//通过x的地址来访问
	system("pause");
    return 0;
}

第三行是通过156这一变量的地址来访问的
可以看出两种方式访问变量,得到的是一样的

指针的本质

综上,我们可以知道指针在本质上就是“地址”

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值