首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在c++中创建“n”大小的数组?

如何在c++中创建“n”大小的数组?
EN

Stack Overflow用户
提问于 2020-12-27 09:25:57
回答 2查看 177关注 0票数 1

我试图创建一个n个大小的数组,但是每次我尝试创建一个数组时,我都会看到一个错误:

代码语言:javascript
复制
expression must have a constant value -- the value of variable "n" (declared at line 33) cannot be 
used as a constant

我以前是这样工作的,但那是密码。这一次,我手动下载了mingw,并且一直在使用VSCode。我的所有其他代码工作良好,但似乎无法找到解决办法。

代码语言:javascript
复制
int main()
{
    int n;
    cin >> n;
    int arr[n];
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
    }
    for (int i = 0; i < n; i++)
    {
        cout << arr[i];
    }
}

明图的基本设置

我的gcc版本是:

代码语言:javascript
复制
gcc.exe (MinGW.org GCC Build-2) 9.2.0
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-12-27 09:31:59

int arr[n];是具有运行时n的无效的C++,它使用VLA扩展。

使用std::vector代替:

代码语言:javascript
复制
int n;
std::cin >> n;
std::vector<int> arr(n);
票数 5
EN

Stack Overflow用户

发布于 2020-12-27 09:29:58

可以使用堆/动态数组创建长度为n的数组。类似: int arr=新数组(N)

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65464381

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档