www.7671.net > 动态数组和静态数组的区别

动态数组和静态数组的区别

vb中动态数组就可以在任何时候改变大小,静态数组只能够预先设置大小,过度使用这种方法,会导致内存的操作环境变慢.visual basic 中有两种类型的数组:固定大小的数组 它总是保持同样的大小,以及在运行时大小可以改变的动态数组.在 visual basic 中,动态数组最灵活、最方便,有助于有效管理内存.例如,可短时间使用一个大数组,然后,在不使用这个数组时,将内存空间释放给系统.如果不用动态数组,就要声明一个数组,它的大小尽可能达到最大,然后再抹去那些不必要的元素.但是,如果过度使用这种方法,会导致内存的操作环境变慢.

静态数组就是你一开始就定好了他的大小,在你写入数据是他的容量范围不再发生变化,而动态数组就是一开始你没确定好他的大小,而只用了A[n],在写入的时候这个n是任意的.其实你网上查一下也很多的.我学了都快忘了,你参考一下吧

静态数组根本不能满足我们编程的实际需要,比方说我需要在程序运行过程中动态的向数组中添加数据,这时我们的静态数组大小是固定的,显然就不能添加数据,要动态添加数据必须要用到动态数组,动态数组中的各个元素类型也是一致的.具有容量扩充性,同步性和数据操作效率等特点!

动态数组是在程序运行时创建的,可以根据用户需要,有效利用存储空间:int *h=new int[10];静态数组在声明时就已经确定大小的数组,即数组元素的个数固定不变:int h[10];

区别:1,数组创建时间不同,静态的是一定义出来就创建了,动态的则是定义时不创建,使用时才创建,一定意义上节省了内存空间.2,使用场景不同,一开始就知道数组长度的使用静态初始化,反之,动态初始化.联系:其实没有什么联系,最恰当的方法用在最适合的场景里就行了

Private Sub Command1_Click()Dim arrA(2), arrB()arrA(1) = "111"arrA(2) = "222"MsgBox arrA(1)ReDim arrB(3)arrB(1) = "aaa"arrB(2) = "bbb"arrB(3) = "ccc"MsgBox (arrB(3))ReDim Preserve arrB(5)arrB(4) = "XXX"arrB(5) = "YYY

vb中动态数组就可以在任何时候改变大小,静态数组只能够预先设置大小,过度使用这种方法,会导致内存的操作环境变慢.

静态数组占用的内存空间大小是不变的动态数组可以根据需要动态的申请内存空间,不需要的空间也可以释放掉.

静态数组是编译时分配空间,动态是运行时分配

int maw(int i[],int d){for(int j=0;j<=d;j++)cout<<i[j]<<" ";}其实是输出d+1次for(int j=0;j<=d;j++)你应该改成for(int j=0;j<d;j++)

网站地图

All rights reserved Powered by www.7671.net

copyright ©right 2010-2021。
www.7671.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com