指针和数组的区别
来源:互联网 发布:软件测试团队 编辑:程序博客网 时间:2024/05/16 12:10
(1):从空间分配上:指针是动态分配空间,在malloc上分配空间,分配的空间不一定连续,空间使用完之后要调用free函数进行释放。而数组是静态分配空间,在栈空间或者在数据区分配空间,分配的空间是连续的,局部变量数组在函数执行结束后释放空间,而全局变量数组在整个程序执行完之后才释放。
(2):从访问效率上:数组是直接访问,而指针是通过地址间接访问,数组的访问效率比指针要高
(3):从安全性上:数组使用不当回造成数组越界,而指针使用不当可能会造成内存泄漏。
(4):从函数形参上:数组当形参传递的时候要用数组元素指针来接,指针变量当形参传递时,要用指针的指针即二维指针来接。
(5):从字节大小上:指针变量的大小是固定的,由操作系统的位数来决定,而数组内存的大小由数组的大小和数组元素的数据类型共同决定。
指针的优势:
(1):指针是动态分配空间,可以提高空间的利用率
(2);使用指针更加灵活
(3):C语言的访问效率高,可以直接访问硬件,就是因为通过指针对硬件(寄存器)直接进行操作
0 0
- 指针数组和数组指针的区别
- 指针数组和数组指针的区别
- 指针数组和数组指针的区别
- 数组指针和指针数组的区别
- 指针数组和数组指针的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 数组指针和指针数组的区别
- 指针数组和数组指针的区别
- 数组指针和指针数组的区别
- jsp,java在桌面生成网站快捷方式
- 第十五周项目3-B-树的基本操作
- Apache端口配置
- Java中有关Null的一些事
- Android onTouchEvent java.lang.IndexOutOfBoundsException
- 指针和数组的区别
- kylin误删hdfs上kylin_metadata下数据出现java.lang.IllegalStateException错误
- 《亚原子粒子的发现》
- Struts2-动态方法调用-Could not find action or result-Method update for action user is not allowed
- 双系统:Win7下U盘安装Ubuntu14.04双系统步骤详解
- 在android4.4上新增加keycode
- (第十六周项目2)大数据集上排序算法性能的体验
- systemctl 命令完全指南
- 第16周项目1 验证算法(6)堆排序