2016 - 2024

感恩一路有你

c语言可变数组怎么定义 c语言数组名值可变吗?

浏览量:1867 时间:2021-03-15 08:15:48 作者:admin

c语言数组名值可变吗?

以前版本的C99没有。数组大小必须是常量或常量表达式。C99版本只添加了一个可变长度的数组

MSDN中的数组声明如下所述:保持数组最大大小所需的整数类型是size 的大小。在头文件STDDEF.H中定义,size 是一个无符号整数,范围为0x00000000到0x7cffff。也就是说,只要硬件条件允许,数组的大小可以是0x7cffff(2G字节)。数组占用的空间为:count*sizeof(type)。Count是数组元素的数目,sizeof(type)是元素占用的字节数。如果定义的数组空间超过2G,VC编译器将报告一个错误:致命错误c1126:“2G”:自动分配超过。。。因此,当实际编程确实需要使用更大的数组时,应该使用动态定义方法(newmalloc等)。

c语言中数组的大小可以改变吗?

这是个好问题。目前,我能想到的是使用链表结构而不是数组,或者更准确地说,使用alloc函数来构建链表。

与数组不同的是,数组的元素在内存中是一个连续的区域,而链表的节点在内存中是一个离散的区域,因此链表的运算效率比数组要低一些。

如果您有其他方法,可以留言一起讨论!

c语言可变数组怎么定义 c语言可变长数组 c语言中如何定义动态数组

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。