【C语言】指针类型的意义(1)
【摘要】 【C语言】指针类型的意义(1)
🗡 指针类型的意义(1)
指针类型的意义,代码如下所示↓
此时,经过调试阶段我们可以发现,首先 a 的地址赋值给指针变量并且对象类型是 int 类型。然后,再通过 解引用 *pa 把原来 &a 的地址变成0,那么通过这个现象,我们就可以知道用int * 进行解引用的话,我们是成功访问到 ④个字节 的地址。是不是可以说明指针访问字节是④个字节呢。
经过调试阶段我们可以发现,首先 a 的地址赋值给 指针变量并且对象类型是 char 类型。然后,再通过 解引用 *pa 把原来 &a 的地址变成0。那么通过这个现象,我们就可以知道用char * 进行解引用的话,而我们是成功访问到 ①个字节 的地址。可以看出只是类型发生了变化,访问权限就会发生变化。从这里说明了指针是只能访问④个字节的,这是C语言语法标准规定死的。
所以从上面两个不同指针对象,我们就可以从中发现。只是不同类型的变化,就可以在调试当中发现它们的访问权限就发生了变化。这就从中说明指针类型是具有意义的。
如果我是①个整形指针(int*)的话,解引用的时候,我去访问一次的话。解引用一次就可以访问④个字节。按照上面图中我就可以把④个字节全部变成0了。
然而,如果我是一个字符指针(char*)的话。我解引用一次我就只能访问其中的①个字节。
通过这个例子可以知道:不同类型指针在解引用的时候就决定它的访问权限有多大。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)