c语言初级指针详解,一级指针,二级指针。n级指针

目录:

一:1级指针

1.1:内存的使用

1.2:c语言内存中数据的访问

1.3:一级指针的定义方式

1.4:通过指针访问数据。

二:二级指针

2.1二级指针的创建和访问

总结

一:1级指针

首先在对指针进行理解之前,我们要清楚下面这几个个概念:

1.1:内存的使用

和现实生活对空间的分别方式相似,给不同的地域不同的名称。例如,北京,上海等

而内存也是一块空间,所以对这块空间的不同位置进行不同的编号,用起来也会更加方便。

这些编号就是我们常说的地址了。

我们都知道 ,内存里最小的内存单元就是一个bit位 ,那多大的内存空间可以分配一块地址呢,在

c语言的标准中规定,给每个字节大小的空间(8个比特位)配置一个专门的地址。

1.2:c语言内存中数据的访问

在c语言中创建一个变量a,那么我们通常是用变量名来访问这个数据,但是也可以用地址来访问这个数据 。那么要怎么通过地址来访问数据呢?????

这里就需要指针了。

1.3:一级指针的定义方式

#include<stdio.h>
int main()
{
	//一级指针
	int a = 10;
	int* pa = &a;
	printf("%d\n", a);
	printf("%d\n", *pa);
	return 0;
}

    int a = 10;//定义一个整形变量,变量中存储的数据是10
    int* pa = &a;//* 代表pa是一个指针 最前面的int代表pa指向的变量类型是整形类型

1.4:通过指针访问数据。

*pa=1;//代表对pa中的数据(也就是刚才拿到的a的地址)进行解引用,来访问a中的数据。

总结:指针里只能存放地址,地址也只能放置在指针中,对一级指针进行解引用就能通过他里面的地址来访问原变量a中存储的数据

二:二级指针

通过前面的了解我们知道,指针变量里面放置的是地址,而只要是变量,那肯定就有它自己的地址  所以我们来看下面这个例子

2.1二级指针的创建和访问

**ppa也可以看成    *(*ppa) 首先*ppa表示对ppa中的数据进行解引用,就能访问pa中存储的数据 所以*ppa就想当于pa,而对pa进行解引用就能访问a了(在上面的例子我们可以看到这两钟形式打印出的数据一样)

所以 * *ppa 也就相当于  a 了

总结:

一级指针pa里存的是整形变量a的地址,二级指针ppa里存的是一级指针变量pa的地址。

以此类推n级指针的定义和访问方式相同。

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值