1、如果是定义一个数组(元素个数给出),这两个没有区别。2、如上楼所说,如果没给定【数组】,是不能直接用这两个定义。3、定义不知道元素个数的数组时,你首先必须得申请个足够大的内存空间,此时,用char a[n]要好,N要足够大,则在编写程序前要 vector array(len),这就申请了变长数组;len*sizeof(类型)(这个一般申请int类型的较为常见)之后,用指针向NEW分配长度为len*sizeof(类型)内存空间。
char array[];//不可以 必须指明数组元素的个数例如:int n;int *array = new int [n];// 动态delete [] array;vector <int> _array (n);//向量~vector();