zhouxiaole 发表于 2008-3-19 22:00:20

求助哪位高手大哥帮忙看看。

关于动态数组的问题。我在程序里加入了
int **lattice;
lattice=new int *;
for (int j=0;j<n;j++)
{lattice=new int ;}
这个程序,在接下来我想写
double ax;
double az;
怎么就出错了呢?说我
error C2057: expected constant expression
还请高手指点迷津阿,在下新手,见笑了,万分感谢。

石翔宇 发表于 2008-3-19 22:37:14

要求常量,是不是你的S和n定义的是变量啊?
可以采用宏的方式定义常量:
例如:把S定义为常量,大小等于10
#define S 10

zhouxiaole 发表于 2008-3-20 08:58:24

谢谢啦

我的n是常量,我的S是在前面算出来的啊,算出来的不算是常数阿,cin<<S这样行不行啊?

jiguixiu 发表于 2008-3-20 13:53:07

你为什么要写double ax呢?你开那个整型数组lattice的时候都知道开两次内存那样开,为什么再要定义两个double数组的时候就不会了呢,一样的开啊。
        double **ax;
        ax=new double *;
        for (int j=0;j<n;j++)
        {ax=new double ;}

zhouxiaole 发表于 2008-3-20 14:45:49

太感谢了!

试一下,太感谢了
页: [1]
查看完整版本: 求助哪位高手大哥帮忙看看。