求解一个简单的创建单链表的问题为什么用二级指针 ?
2014-07-28 22:33
281 查看
这就是传指针和传“指针的指针”的区别:
1.传指针:我们是拷贝一份地址传过去,那么对于该地址块上值的修改则会影响实参(即main()函数中的clink *h的值),但仅限于对该地址块,所以如果实参指针为空,而你在函数createclink中重新申请空间,注意这时候地址空间变了,就像你main()函数中的h依旧为空,因为函数createclink中没有对实参h的值做改变,因此,你的createclink函数没起到作用.
2.传指针的指针:这和传指针的引用效果一样,这时候值的改变中的“值”就是h,即一个地址(而上面的“传指针的值”是“该指针指向的值”),因此在createclink函数中申请空间,main()函数中h也有了新的空间,因为这种传值改变的是“地址”。
1.传指针:我们是拷贝一份地址传过去,那么对于该地址块上值的修改则会影响实参(即main()函数中的clink *h的值),但仅限于对该地址块,所以如果实参指针为空,而你在函数createclink中重新申请空间,注意这时候地址空间变了,就像你main()函数中的h依旧为空,因为函数createclink中没有对实参h的值做改变,因此,你的createclink函数没起到作用.
2.传指针的指针:这和传指针的引用效果一样,这时候值的改变中的“值”就是h,即一个地址(而上面的“传指针的值”是“该指针指向的值”),因此在createclink函数中申请空间,main()函数中h也有了新的空间,因为这种传值改变的是“地址”。
相关文章推荐
- 《Applications=Code+Markup》读书札记(2)——创建一个简单的 WPF 程序的代码结构及关于 Window 实例位置设置问题
- 职责链模式和工厂模式混合求解一个简单的解密问题
- 一个简单的 C 语言指针问题
- 【C#】对异步请求处理程序IHttpAsyncHandler的理解和分享一个易用性封装 【手记】走近科学之为什么明明实现了IEnumerable<T>的类型却不能调用LINQ扩展方法 【手记】手机网页弹出层后屏蔽底层的滑动响应 【手记】ASP.NET提示“未能创建类型”处理 【Web】一个非常简单的移动web消息框 【手记】解决EXCEL跑SQL遇“查询无法运行或数据库表无法打开...”
- 用二级指针删除单链表的一个节点
- 数据结构 二叉树的创建 关于二级指针的问题
- 一个简单的指针释放问题
- (转)问题:假设一个没有头指针的单链表。一个指针指向此单链表中间的一个节点(既不是第一个,也不是最后一个节点),请将该节点从单链表中删除。
- 关于指针和const限定符问题的一个简单判断方法
- [异常解决] 初玩SAE遇到的小问题——注册&创建项目+MyEclipse装插件直接部署+一个简单的JSP部署实现
- (转)问题:假设一个没有头指针的单链表。一个指针指向此单链表中间的一个节点(既不是第一个,也不是最后一个节点),请将该节点从单链表中删除。
- 一个简单的指针指向问题的讨论
- 指针方面的问题,此程序调试显示是正确的,但是运行起来的结果是错误的为什么?求解
- C中指针传递的一个错误--二级指针的传值问题
- 一个二级指针引发的问题
- 简单的问题,用类创建一个对象error C2380: type(s) preceding 'Complex' (constructor with return type, or illegal redefinition of current class-n
- 单链表的创建,删除,插入,清空全部用一级指针也没发现什么问题啊
- Macriomedia Flex入门教程第二部分――创建一个简单的计算器
- Create a simple Delphi Expert(创建一个简单的Delphi专家)
- 一个分酒问题的求解