一个问题请教假设 const int a=50;那么 int str[a]; 非法; const int b=2*a; 非法;请教,为什么非法,有本教材上市这么说的,不明白[解决办法]const int a=50;千万不要这样写a就是常量了,本质上还是变量!只不过不允许改变a的值罢了。所以第一个肯定不行的!!第二个只是声明时赋值,是可以的!!!