指针和指针的不同:
1、指针:地址是指变量单元,通过它能找到以它为地址的内存单元。
2、引用:引用时变量的别名。
区别:
1、指针是变量,存放的是指向该内容的地址,引用是别名,与所引用变量占用同一内存空间。
2、sizeof 一个指针的大小为4,而引用的大小则根据变量所占的空间大小
3、指针可以改变,而引用不能更改
4、指针的初始化可以为空,引用必须被初始化且必须是一个已有对象的引用
5、引用必须被初始化,但不分配内存。指针不指明初始化是,在初始化时要占用内存
6、引用的本质其实就是指针常量。可以有const 指针但不能有const引用
数组和指针的不同:
1、数组保存的是数据,而指针保存的是地址
2、从空间上来说,数组是静态分配,指针是动态分配内存
3、从效率来说,数组是直接访问数据,而指针是通过地址间接访问
4、从安全性方面来看,数组易造成越界,指针易造成内存泄漏
5、数组是连续的空间,而指针不一定是连续的