测试动态数组的生成方法

来源:互联网 发布:ubuntu移动一个文件夹 编辑:程序博客网 时间:2024/06/07 13:07

嘿嘿 本菜第一次在CSDN写博客!鼓励一下!哇!

#include <iostream>
using namespace std;
int main()
{
 //测试动态数组是否可行
 int num;
 cin>>num;
 int array[num];
 return 0;
}

发现出错了,编译结果如下

E:\所有VC工程\TmpTest\Test01\test01\main.cpp(8) : error C2057: expected constant expression
E:\所有VC工程\TmpTest\Test01\test01\main.cpp(8) : error C2466: cannot allocate an array of constant size 0
E:\所有VC工程\TmpTest\Test01\test01\main.cpp(8) : error C2133: 'array' : unknown size
执行 cl.exe 时出错.

但是改成下面的则编译通过

#include <iostream>
using namespace std;
int main()
{
//测试动态数组是否可行
int num;
cin>>num;
//int array[num];
int* array=new int[num];
return 0;
}

所以以后用new 的方式动态创建数组是可以避免常规无法创建动态数组的困扰。数组大小应在编译前就指定好。

原创粉丝点击