gpt4 book ai didi

c++ - 由非常量变量定义的大小数组

转载 作者:可可西里 更新时间:2023-11-01 15:39:17 30 4
gpt4 key购买 nike

有这样的代码:

#include <iostream>

int main()
{
int size;
std::cin >> size;

size = size + 1;
int tab3[size];

tab3[0] = 5;
std::cout << tab3[0] << " " << sizeof(tab3) << std::endl;
return 0;
}

结果是:

$ g++ prog.cpp -o prog -Wall -W 
$ ./prog
5
5 24

为什么这段代码甚至可以编译?数组的长度不应该是一个常量变量吗?

我使用的是 g++ 版本 4.4.5。

最佳答案

C++ 中的可变长度数组可作为 GCC 中的扩展使用。编译所有警告应该提醒你这个事实(包括 -pedantic)。

关于c++ - 由非常量变量定义的大小数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8125818/

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