c中貌似有问题,但是在c++中会出现同样的问题吗?比如,int a=5,double stu[a].,不好意思这么基本的问题还没搞清楚,谢谢啦。
笔误,不是“唯独”,是“维数”
C++中使用变量来定义数组是合法的,你还可以通过外部输入n来定义这个数组的大小。
#include <stdio.h>
int main(){
int n;
scanf("%d",&n);
int a[n]
for(int i ; i < n; i++){
a[i] = i;
printf("%i ", a[i]);
}
printf("size = %i\n", sizeof(a));
return 0;
}
enum {a=5;};
double stu[a];
可以,a最好为静态变量
staitc int a=5;
double stu[a];
const常量 const int a=5 a[5]
数组唯独不可以用普通变量,可以用常量变量或宏。
以下为合法使用:
char a[5] = "1234";
const int num = 5;
char b[num] = "1234";
int vnum = 5;
char *arrayp = new char[vnum];
arrayp = "1234";
似乎和编译器有关(我的一直可以),具体情况不明,等候大佬解惑