连续使用T2A出错的问题?
toniy 2012-03-16 03:03:36 我使用的是VS2005C++开发的CE程序,想将一些数据保存到文本文件中,在连续使用T2A进行字符转换时会出错?
测试代码如下:
CString str;
LPSTR buf;
UINT strLen;
USES_CONVERSION;
例1:
strLen=0;
for(int k=0;k<4000;k++)
{
str.Format(_T("N%03d"),k);
strLen+=str.GetLength();
buf = T2A(str);
}
例2:
strLen=0;
for(int k=0;k<4000;k++)
{
str.Format(_T("N%03dN%03d"),k,k);
strLen+=str.GetLength();
buf = T2A(str);
}
例1在大概在 k=2557 strLen=12165 时出错
例2在大概在 k=1329 strLen=11180 时出错
为什么啊?是否在T2A后要释放buf,该如何做呢?