小沈的C++学习7——指针
这节课终于学到指针了,话说感觉我是不是在前面几篇博客已经用过不少次这玩意了。但是指针到底是个什么东西呢?今天就让我们来学习指针这个东西。 首先我们小学一年级就学过,电脑里面有内存这个东西,就是利用电位高低存储各种数据,然后可以让cpu各种调用的小容器,而各种数据就听从程序的指挥,在一个个小格子里落户,这个格子就是内存地址。这个时候如果一个函数内部运行的时候在内存上留下了一串数据,它想把这一串数据都交给主函数,那它就可以直接把某个小格子的位置告诉主程序,主程序就可以利用这个位置信息直接到内存里去找这个函数留下来的数据。而这个位置信息就是指针。 首先我们要知道,指针本身也是一种数据,意思就是我们拿到一个指针,到指针指的位置上拿到一个数据,可能也是一个指针。 有了指针,我们甚至可以自己创造一个数据类型。比如我们所有函数都遵循这样一个约定:返回一个指针,指针指向一个指针数组,指针数组的一个指针指向一个数字,代表这个数据的长度或者内存长度,第二个指针指向另一个数字数组,代表这个数据里面每个数据的数据类型,第三个及之后的指针则指向各个数据。这个数据类型是不是很熟悉?没错,只要我们愿意,我们也可以手作一个列表。并且由于指针可以指向指针,这个列表可以不断嵌套(禁止禁止套娃)。 一、指针定义和运算 首先既然我们有了地址,那我们也要知道地址的数据有多长,是个什么类型的数据