请选择 进入手机版 | 继续访问电脑版

思源驿站

 找回密码
 立即注册
查看: 859|回复: 64

[C语言] 对指针的一些理解

[复制链接]

11

主题

48

帖子

249

积分

中级会员

Rank: 3Rank: 3

积分
249
发表于 2017-4-3 13:48:17 | 显示全部楼层 |阅读模式
本帖最后由 Pearce 于 2017-4-3 13:50 编辑

C语言中的指针
Char *p;
Char a=’c’;
P=&a;

char *p开辟了一个指向字符的指针类型,*p拥有自己的地址,但是此时还没有进行赋值操作,C语言中定义了变量却没有赋值的时候变量中存储的是随机值,所以这个时候p中存储的是随机地址,自然,*p也是一个随机值。
P=&a之后,指针p中存储变量a的地址,*p就是变量a的内容(‘c’)。
(看图)
sizeof*p=1,因为*pchar型。
Sizeofp=4,因为p中存储的是a的地址(地址是一串很长的数字,所以用int类型存储[vc 64])
Sizeof(&p)=4  &p是指针*P自己的地址.

指向指针的指针
Char **s;
s=&p;

Char **s开辟了一个指向指针类型的指向指针的指针类型,**s也拥有自身的地址,这个指向指针的指针本身是char.所以,
Sizeof*s=4;  *s相当于p中的内容(也是一个地址,p=&a 也就是变量a的地址)
Sizeof(s)=4;          指向指针的指针中存储的内容(一个地址,即&p
Sizeof(&s)=4;   指向指针的指针**s自身的地址
Sizeof(**s)=1;  **Schar型。

Printf(“%c”,**s);可打印出c
理解了指向指针的指针之后 可以定义***q,q=&s;****t,t=&q;
最后打印出的****t和***q以及**s,*p,a是同样的结果.
要明白的是指针是用来存放地址的,同时,指针也有自己的地址,所以一定要清楚自己用的指针里存放的地址是什么东西的地址,这样用到指针的时候才不容易出错.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

11

主题

48

帖子

249

积分

中级会员

Rank: 3Rank: 3

积分
249
 楼主| 发表于 2017-4-3 13:53:00 | 显示全部楼层
上述内容是我自己的一些理解,若有差错,请及时告知我 谢谢
回复 支持 反对

使用道具 举报

17

主题

100

帖子

251

积分

中级会员

Rank: 3Rank: 3

积分
251
发表于 2017-4-4 20:12:33 | 显示全部楼层
哈哈哈哈!!!
回复

使用道具 举报

28

主题

66

帖子

261

积分

中级会员

Rank: 3Rank: 3

积分
261
发表于 2017-4-4 20:14:50 | 显示全部楼层
回复

使用道具 举报

17

主题

100

帖子

251

积分

中级会员

Rank: 3Rank: 3

积分
251
发表于 2017-4-4 20:37:10 | 显示全部楼层
哈哈
回复

使用道具 举报

17

主题

100

帖子

251

积分

中级会员

Rank: 3Rank: 3

积分
251
发表于 2017-4-4 20:37:12 | 显示全部楼层
哈哈
回复

使用道具 举报

17

主题

100

帖子

251

积分

中级会员

Rank: 3Rank: 3

积分
251
发表于 2017-4-4 20:37:15 | 显示全部楼层
哈哈
回复

使用道具 举报

17

主题

100

帖子

251

积分

中级会员

Rank: 3Rank: 3

积分
251
发表于 2017-4-4 20:37:18 | 显示全部楼层
哈哈
回复

使用道具 举报

17

主题

100

帖子

251

积分

中级会员

Rank: 3Rank: 3

积分
251
发表于 2017-4-4 20:37:21 | 显示全部楼层
哈哈
回复

使用道具 举报

17

主题

100

帖子

251

积分

中级会员

Rank: 3Rank: 3

积分
251
发表于 2017-4-4 20:37:29 | 显示全部楼层
哈哈
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|思源驿站 ( 苏ICP备15052778号

GMT+8, 2017-9-19 19:27 , Processed in 0.281446 second(s), 31 queries .

快速回复 返回顶部 返回列表