2016 - 2024

感恩一路有你

c语言如何定义可变长度数组 C语言,可变长数组?

浏览量:1414 时间:2021-03-14 05:39:58 作者:admin

C语言,可变长数组?

我不会看冒泡排序的算法部分。我直接告诉你,你不知道错误的原因。你的第一种写作方式:int n=1,a[n],I=0,j=0,k=0。这里定义了n=1,在这一行中还定义了[n]。然后编译器将在这里直接为序列a分配内存。也就是说,确定阵列A的大小,即1。我不知道你是否学会了内存分配。我给你一个简短的解释。您可以在线搜索详细信息。例如,一个具有五种整数类型的数组可以定义为[5],但也可以按如下方式获得:int*a=(int*)malloc(sizeof(int)*5)也就是说,我们将内存分配给一个指针以获得一个数组。[5]的定义还要求编译器在编译程序时分配内存。编译器将根据您的代码优化您的程序,并将代码转换为汇编代码。另外,机器代码说得太多了。我将继续分析修改后的代码int n=1,I=0,j=0,K=0printf(“please input the length of the array:”)scanf(%d“,&n)int a[n];//此时,由于您在声明数组之前读入了n,因此a是根据您输入的数字确定的数组大小。你知道我的意思吗?

如何声明可变长度的数组,C语言?

C99标准中增加了可变长度阵列。你的编译器无法使用它。它只能解释它不支持C99的这个功能

以前的C99版本没有这个功能。数组的大小必须是常量或常量表达式。只有在C99版本中才能添加可变长度数组

c语言如何定义可变长度数组 c可变长度数组 c语言输入数组

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