char ch1[10],ch2[10],ch3[10],ch4[10],ch5[10],ch6[10],ch7[10],ch8[10];
CString strFile1=strPath;
CFile destFile;
CFileException fe;
destFile.Open(strFile1, CFile::modeCreate | CFile::modeWrite | CFile::typeBinary, &fe );

int n=0;
for(n=0;i-n>=4;n=n+4)
{
itoa(a[n][0],ch1,10);
itoa(a[n][1],ch2,10);
itoa(a[n+1][0],ch3,10);
itoa(a[n+1][1],ch4,10);
itoa(a[n+2][0],ch5,10);
itoa(a[n+2][1],ch6,10);
itoa(a[n+3][0],ch7,10);
itoa(a[n+3][1],ch8,10);
neirong=neirong+" "+ch1+" "+ch2+" "+ch3+" "+ch4+" "+ch5+" "+ch6+" "+ch7+" "+ch8;
}
int o;
o=neirong.GetLength();
destFile.Write(neirong,o);
destFile.Close();
neirong="";
我现在有一个数组a[][],其中有数据i-1个,我需要把4的整数倍的数放进txt里,也就是说如果多出有那么1,2,3个数就不放进txt里了.........
现在我这么编的结果是ch2,ch4,ch6在txt显示出的数据不对,求解

解决方案 »

  1.   

    单调一下 看看是不是每次循环ch2,ch4,ch6里面的值都不对
      

  2.   

    关键是我把这些值在编辑框显示出来的值就是a[][]的值,但和txt中的不一样了....哭......
      

  3.   

    话说..我是新手...以前在vb里知道怎么看,vc确实没用过,都是一步一步学别人代码,我现在还停留在学例子写代码阶段,望赐教
      

  4.   

    Debug下调试,单步执行,看看值对不对~,数组有没有越界什么的
      

  5.   


    你这句话有问题?你程序里面有这条语句“itoa(a[n][1],ch2,10);
    ”,从你的程序看你的二维数组a[][]里面,应该是a[999][2]才是,要不然哪来的a[n][1]?我不知道到底是你说错了还是其他什么原因,如果你定义错了数组,那肯定溢出了,而且溢出还报错
      

  6.   

    啊,不太理解,没有溢出啊,二维数组对啊,不是a[0][0],a[0][1],a[1][0],a[1][1],a[2][0],a[2][1].....之类的吗?哪里错了