|
|
发表于 2006-8-30 13:57:00
|
显示全部楼层
Re:关于数组的问题,99
写了个测试程序
arry.h中:
#include<iostream>
using namespace std;
int kknd[4][4];
arrt.cpp中:
#include"arry.h"
void main()
{
/*kknd[4][4]={
{1,2,3,4},
{5,6,7,8},
{3,5,6,7},
{2,3,6,7}
}*/
cout<<kknd[3][3]<<endl;
cout<<kknd[4][4]<<endl;
int knd[4][4]={
{1,2,3,4},
{5,6,7,8},
{3,5,6,7},
{2,3,6,7}
};
memcpy(&kknd[0],&knd[0],sizeof(int)*16);
for(int i=0;i<4;i++)
for(int j=0;j<4;j++)
{
if(j%4==0)
cout << endl;
cout<< kknd[j];
}
}
输出为:
0
3607200
1234
5678
3567
2367
从结果可以看出你定义4维数组没有初始化,系统给你初始化了,数组指针指向的内存是const型的,你cpp中再初始化当然不行,你从新定义个数组再memcpy过去,以前指针指向的位置就变了,数组内容形式上也就变了,靠,时间紧迫,我自己见解,仅供参考呵呵!!!! |
|