C和C++为什么不准动态定义数组,我表示**!

[复制链接]
2728|4
 楼主| 不光写程序 发表于 2012-2-4 16:47 | 显示全部楼层 |阅读模式
C与C++为什么不准动态定义一个数组大小,也就是说不能定义数组时下标必须是一个常量,不能是变量(如int a[100])。  要想在程序运行中动态定义数组还要用指针和new运算符或malloc函数,这不是脱裤子放屁吗? 抗议!
Cortex-M0 发表于 2012-2-4 16:59 | 显示全部楼层
很正常,动态定义数组 必须先用malloc 函数向系统申请分配指定size个字节的内存空间,自动计算所需要空间大小。否则,若你脑袋一拍,动态指定一个N大的数组,如int a[1000000000])。不就杯具啦~~~  ;P
李富贵 发表于 2012-2-4 17:05 | 显示全部楼层
动态定义数组?真是思路广欢乐多。
power_lee 发表于 2012-2-4 18:05 | 显示全部楼层
不准动态定义一个数组大小,我觉得很理解啊!
汇编做不到的,其实C也很难做到!
 楼主| 不光写程序 发表于 2012-2-4 23:05 | 显示全部楼层
很正常,动态定义数组 必须先用malloc 函数向系统申请分配指定size个字节的内存空间,自动计算所需要空间大小。否则,若你脑袋一拍,动态指定一个N大的数组,如int a[1000000000])。不就杯具啦~~~   ...Cortex-M0 发表于 2012-2-4 16:59
看来到现在为止这个保护机制是最能顺的通的理由了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

950

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部