非常风气网www.verywind.cn
首页
定义数组时数组长度可以是变量吗
定义数组时
,数组的
长度可以是变量
???急求解!!谢谢
答:
在我所有已知的语言中,
静态数组的长度都不可以是变量
,这个可以参考语法:char arr[10];但是,如果是动态数组,则长度可以是变量,比如char p = new char[length];另一种可能的情况是数组封装类,这个不同语言有不同实现,比如java中的Array,比如STL中的向量类等等。
数组长度
为什么不
能是变量
?
答:
数组的大小不能用变量表示的
,是因为在编译连接期间内存要按照你制定的长度给数组分配相应的内存空间,如果是变量的话就没有办法给它分配了,你可以用符号常量来解决,在开头用:define m 100 define n 100 然后在程序中就可以定义u[m][n]二维数组了,当不一定非要是100,可以是任何一个正整数。C...
C语言中
数组长度
不
能
用
变量定义吗
?
答:
C语言里,所有变量空间都是在程序运行之初向系统申请的,包括指针,除了一些动态申请方式如malloc函数。没有申请的空间系统是不允许读写的。那么如果一个
数组
大小
是变量定义
,则在程序运行前不能确定数组大小,也就无法申请,故不允许。所以,解决的办法便是通过malloc函数,即 int a[n];可改为 int* c...
C语言中
可以定义
不定长度的数组(即
数组长度
由
变量
确定)吗?
答:
不可以
,数组在创建时长度已经确定了,而且创建后也无法更改数组的长度,楼上说的malloc动态申请的内存也是已确定的,你都不能在 不破坏原有数据的情况下改变其大小。那怎么储存未知大小的数据呢,在储存后怎样能随意的对其添加、更改、删除、查找等一系列操作呢?只用简单的数组肯定不行,需要用到别的数...
C语言中普通
数组
在
定义的时候
不给出数组的具体
长度
,那么计算机是在运行...
答:
变长数组:数组长度为变量
,在编译期间不能确定数组长度,要等到程序运行后,变量赋值后(数组定义语句不要写在变量赋值之前!),才能给数组分配内存。变长数组本质还是静态数组(定义前大小可变,但定义后不能改变大小)。要定义动态数组需要用malloc函数来申请内存。
C语言里,编译器不支持c99的IDE规定的
数组
只是
定义长度时
不
能是变量
,
答:
在有的编译器中数组在
定义时
用的必须是常量,不
能是变量
。在有的编译器里其实也可以用变量的,只是不推荐使用,好像C99通过了
数组定义
时用变量,但是有的编译器还不能这样做,你大概是用到了这样的编译器了
C语言
数组长度可以是
一个
变量吗
答:
不可以 因为不好编译 不过可以用malloc()申请一段堆内存 这个
长度是
可变的
为什么在c++中
定义数组时数组
的常量表达式不能包含
变量
?
答:
你是指常量表示
数组
大小,还是初始值?但不管是什么,都原理一样,以数组大小为例,在C++中,有些
变量
是在编译期间,编译器就给分配空间的,有的是运行
时候
才分配空间,对于编译期间就分配空间的变量,编译器一定要知道它是多少
长度
的,才能分配适合那个长度的空间,静态数组,临时变量,全局变量之类都是...
数组定义
中,数组名后是用方括号括起来的常量表达式
答:
如果
数组长度是变量
或者无法在编译时确定的值,那么数组所占的内存空间就无法确定,这会给内存管理带来极大的困难。在
定义数组时
,我们常常会看到这样的语法:数组类型数组名[常量表达式]。这里的常量表达式就是数组的长度。例如,在C语言中定义一个整型数组,长度为10,可以这样写:intarr[10];。。需要...
C++里如何实现用
变量定义数组
的
长度
答:
2、自
定义
函数中,定义一个整型
变量
i,用来计算字符数组的长度。3、函数中,用while循环实现字符
数组长度
的判断。4、主函数中,先保存一个整型变量,保存计算出的字符串数组长度。5、接着,定义一个字符串数组,保存统计的字符串。6、输入统计的字符串,保存在数组str中。7、计算字符串数组的长度,保存...
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
你可能感兴趣的内容
定义不确定长度的数组
c语言怎么动态定义数组
c语言怎么定义n个元素的数组
c语言怎么定义数组空括号
如果数组的长度不确定怎么办
数组和字符数组的区别
c语言小数除以整数的结果
c语言保留两位小数怎么输出
一维数组的定义形式
本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
©
非常风气网