【答疑释惑】指针的奥妙

从一个指针的例子说起,head指向链表的头:

1.ptr=head;

head=NULL;

2.ptr2=head;

head=head->next;

head=NULL;

这两个例子执行head=NULL后,分别对ptr、ptr2有什么影响。

上面的例子讲的就是指针和指针指向的内容。

第一个只是修改了head指针本身,让它指向了一块地址为NULL的内存,而ptr仍然指向之前的内存,所以对ptr并没有产生什么影响。

第二个修改的是head指针指向的内存的内容,后两句相当于head->next=NULL,这样更容易理解。head指向的那块内存中的next指针变量指向了NULL,因为ptr2和head指向的内容相同,所以ptr2指向的内存中的next为NULL了。


原文发布于微信公众号 - 程序员互动联盟(coder_online)

原文发表时间:2015-07-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我是攻城师

Java基础类String了解一下

当你路过一些商场或者地铁口的时候,有没有被千篇一律的"xx健身,了解一下" 所烦到。

962
来自专栏用户2442861的专栏

python操作mongodb数据库

(6) $push: 和 $ pushAll 都是向数组属性添加元素。# 好像两者没啥区别

972
来自专栏python3

习题29:循环和列表

创建一个列表使用[],在里面放入列表的数据,然后用逗号隔开,然后python接收这个列表以及里面所有的内容,将其赋给一个变量

321
来自专栏xx_Cc的学习总结专栏

OC-基础总结(一)

31911
来自专栏JavaEE

String类相关面试题很难?不要方,问题不大前言:一、字符串的创建:二、字符串的拼接:三、intern方法:总结:

Java中有一个String类,特别让人伤脑筋。因为它可以直接赋值,也可以new一下用构造器生成对象,还可以用加号拼接……这些不同的方式到底有什么区别?本文是个...

885
来自专栏王硕

原 预处理符的粘合剂:##运算符

1975
来自专栏乐百川的学习频道

Python 正则表达式

最近研究Python爬虫,很多地方用到了正则表达式,但是没好好研究,每次都得现查文档。今天就专门看看Python正则表达式。本文参考了官方文档 re模块。 模式...

19810
来自专栏Java帮帮-微信公众号-技术文章全总结

【选择题】Java基础测试二(15道)

【选择题】Java基础测试二(15道) 11.对于构造方法,下列叙述正确的是:(AC) A. 构造方法的方法名必须与类名相同; B. 构造方法必须用void...

36210
来自专栏技术博客

C#基础知识系列五(构造函数)

  2、不带参数的构造函数称为“默认构造函数”。 无论何时,只要使用 new 运算符实例化对象,并且不为 new 提供任何参数,就会调用默认构造函数。除非类是s...

733
来自专栏深度学习与计算机视觉

C++ 一个例子说明.c_str()函数

先举个例子说明一下: atoi()是C语言中的字符串转换成整型数的一个函数,在例子的代码里面会用到,其函数原型为: int atoi(const char *n...

1866

扫码关注云+社区