是不是我的CString建的不对呀
host 2003-12-01 08:41:23 首先我生成一个CString
CString CTestDlg::CreateRandString(int length)
{
int i=0;
CString temp="";
CString last="";
char createrand[1];
srand(unsigned(time(NULL)));
for(int m=0;m<length;m++){
i=rand();
i=i%9;
itoa(i,createrand,10);
temp+=createrand;
}
last=temp;
return last;
}
接着压入
vector<CString>CardPasswordString;
vector<CString>::iterator CardPasswordStringIter;
CardNumberString.push_back(temppass);
然后取出放入文件中
for(CardPasswordStringIter=CardPasswordString.begin();CardPasswordStringIter!=CardPasswordString.end();)
{
CString temp_e=((CString)*CardPasswordStringIter);
ar.WriteString(temp_e);//sr为CArchive类
}
为什么写入文件后无论VECTOR多少长,temp_e都为同一值,而且不是我生成的随机数,而是不知道那里出来的一个数,是不是我的CString建的不对呀,但是单步跟踪取出的temp_e是对的呀,请问高手是为什么?
例如输出如下,第一列都为一样,但长度是对的
8132730621 00000003
8132730621 00000004
8132730621 00000005
8132730621 00000006
8132730621 00000007
8132730621 00000008
8132730621 00000009
8132730621 00000010
8132730621 00000011
8132730621 00000012
8132730621 00000013
8132730621 00000014
8132730621 00000015
8132730621 00000016
8132730621 00000017