C语言为什么不做数组下标越界检查
来源:互联网 发布:阿芙的面膜好用吗 知乎 编辑:程序博客网 时间:2024/04/28 10:56
1、为了提高运行效率,不检查数组下表越界,程序就可以跑得快。因为C语言并不是一个快速开发语言,它要求开发人员保证所有逻辑的正确性。所以至少到目前为止,C语言是所有高级语言中速度最快,效率最高的。几乎所有对性能有苛刻要求的场合都使用C语言。
2、不检查下标是为了给程序员更大的空间,也为指针操作带来更多的方便。如果有这个检查的话指针的功能将会大大被削弱,C的数组标识符,里面并没有包含该数组长度的信息,只包含地址信息,所以语言本身无法检查,只能通过编译器检查,而早期的C语言编译器也不对数组越界进行检查,只能由程序员自己检查确保。以及在早期的CRT函数中也不对字符串指针或数组进行越界检查,都是要求程序员确保空间足够,因此也才也才有了在VS2005之后微软提供的安全的CRT函数版本。
- C语言为什么不做数组下标越界检查
- C语言的编译器为什么不检查数组下标越界
- C语言为什么不执行数组下标有效性检查?
- 论C语言中的数组下标越界
- C为什么不对数组进行下标越界检测
- 数组下标越界解析(以C语言为例)
- 可恶的Java数组下标越界检查
- c语言:为什么不进行下标检查,总结下指针和数组
- 程序猿之---C语言细节11(数组下标越界后测试、数组下标中“ ,”运算符,副作用)
- C语言编译器不检查数组下标越界 困扰的很长时间
- 为什么C语言不检查数组的下标?
- 为什么C语言不检查数组的下标?
- 关于数组下标越界
- 数组下标越界错误
- 数组下标越界
- 数组下标越界异常
- 数组下标为负数出现的问题(关于数组下标越界的检查)
- C语言中的数组越界
- 什么是强命名程序集
- 什么是Asp.Net应用程序
- Oracle跟踪事件
- QT中文翻译步骤(转)
- ASP.NET2.0连接ORACLE解决方案
- C语言为什么不做数组下标越界检查
- 如何在eclipse中安装pydev插件(转)
- 什么是ASP.NET
- 《猎鹿人》
- J2ME3.0/2.2 混合开发环境配置问题记录
- 快速禁用LINUX的IPv6提高网速
- sql-function函数的使用
- Debugging techniques for PHP programmers
- 输入N 输出螺旋矩阵 11月12日