gpt4 book ai didi

c - c中如何给数组赋值

转载 作者:太空狗 更新时间:2023-10-29 14:50:41 25 4
gpt4 key购买 nike

我在以下程序中遇到错误。我无法弄清楚为什么我不能在数组中存储值

main()
{
int A[10];
A = {3,1,2,3,4,1,5,8,9,0};
printArr(A,10);
printf("\n");

BubbleSort(A,10);

printArr(A,10);
printf("\n----------------Bubble Sort Efficiently ---------------------\n");
printf("\n");

A = {3,1,2,3,4,1,5,8,9,0};

BubbleSortEfficient(A,10);
printArr(A,10);

return 0;
}

这是我得到的错误:

73: error: expected expression before ‘{’ token
80: error: expected expression before ‘{’ token

请说明我无法存储数组元素的原因。

最佳答案

ANSI C 没有用于在数组初始值设定项之外定义数组聚合 的语法。如果您将初始化与赋值结合使用(从技术上讲,这不是赋值,而是初始化的一部分),您的代码将编译:

int A[10] = {3,1,2,3,4,1,5,8,9,0};

由于您不能重新分配数组,所以您的程序在第二次调用 BubbleSortEfficient 之前的部分应该如下所示:

int B[10] = {3,1,2,3,4,1,5,8,9,0};
BubbleSortEfficient(B, 10);
printArr(B, 10);

编辑:(回应 Keith Thompson 的评论)C99 引入了数组聚合表达式,但它们不能赋值给数组,因为标准没有数组赋值。

关于c - c中如何给数组赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17689412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com