读书人

Qt关于静态数据的一个诡异的有关问题

发布时间: 2012-09-24 13:49:41 作者: rapoo

Qt关于静态数据的一个诡异的问题
static int d[32][1];
static int e[1][32];
定义两个静态变量d和e

d通过以下语句赋初值
for (int i=0; i<32; ++i)
{
d_seqnumber[i][1]=a[i][judge_seqnumber];
}
其实d=00000000000100000000000000000000(1的位置在32个位置中随机)。

然后同样给e赋初值
for (int i=0; i<32; ++i)
{
e[i][1]=a[i][judge_seqnumber];
}

奇怪的是给e赋初值后再次调用d,d变为:
d=00000000000100000000000000000000(原值)
d=00000000001000000000000000000000(再次调用的值):就是1的位置始终比原值左移一个

若是e[i][1]=a[i][judge_seqnumber];删掉,就是不给e赋值
d=00000000000100000000000000000000(原值)
d=00000000000100000000000000000000(再次调用的值):没有问题


问题出在哪 谢谢!

[解决办法]
贴代码吧

读书人网 >QT开发

热点推荐