栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

关于指针指向指针,对指针进行操作

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

关于指针指向指针,对指针进行操作

以下为本人自学时摸索的简单原理,可能缺乏一些专业性,一些地方可能存在问题,仅供查考,如果可以请多多指教,麻烦指出告知。

此文基于一个问题进行探讨,c语言指针问题。本人在编写单片机程序时发现,编程环境为keil5,语言为c语言。

问题:一个指针数组A作为缓存,A中包含有限个指针B,指针B指向缓存数据C,基本需求,在使用完缓存数据C后,需要释放对应空间,即改变指针B的指向,一般指向空指针,以便下次使用,指向新的缓存数据D。

错误方法:用一个一级指针E指向指针B,然后直接操作。
错误结果:对于缓存数据D使用正常,指针B仍然指向缓存数据C,指针E指向空指针。

正确方法:用一个二级指针F指向指针B,然后操作,注意区别处理一、二级对应关系。

分析:一级指针E指向指针B,指向的实际上时指针B对应指向的地址;二级指针的两级分别对应指针B,以及缓存数据C,所以可以通过二级指针控制指针B的指向,也可以读写缓存数据D。个人理解为指针B的引入导致数据升维了,一维为实际数据C,另一维为指向B,当然这种说法可能不够科学。
欢迎各位大牛指导。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1019632.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号