我在做数据录取程序时,用动态数组出现了问题,请大侠帮忙解决:
我在串口接收线程,用动态数组加入数据:
void CntIrq()
{
nLength = SIO_READ(Buffer[100]);//串口读取数据
....
CarrayData.Add(Buffer)//将数据加入到动态数组中}void OnIdle()//在空闲时间函数中,用处理动态记录文件
{
int arraySize = CarrayData.GetSize();
for(int i=0;i<arraySize;i++)
{
....
CarrayData.RemoveAt(0);//删除数组中的数
}
}程序运行一两个小时后,发现记录的文件里,有好几个两帧数据是一模一样的,同时还丢掉了下一帧数据,请问我这程序存在什么问题?
我在串口接收线程,用动态数组加入数据:
void CntIrq()
{
nLength = SIO_READ(Buffer[100]);//串口读取数据
....
CarrayData.Add(Buffer)//将数据加入到动态数组中}void OnIdle()//在空闲时间函数中,用处理动态记录文件
{
int arraySize = CarrayData.GetSize();
for(int i=0;i<arraySize;i++)
{
....
CarrayData.RemoveAt(0);//删除数组中的数
}
}程序运行一两个小时后,发现记录的文件里,有好几个两帧数据是一模一样的,同时还丢掉了下一帧数据,请问我这程序存在什么问题?
解决方案 »
- ON_EVENT(CTestView, IDC_MSCOMM1, 1 /* OnComm */, OnComm, VTS_NONE) 串口的两个问题
- 给无分的朋友加点分2
- unused = CXX0030: 错误: 无法计算表达式的值
- MDI子窗口的滚动条
- com组件注册后又卸载 会在注册表中留下痕迹吗
- 如何在一个https session使InternetErrorDlg只跳出一次, 下一次自动用上次的证书,
- 招募ICE爱好者,进这个QQ群:22292857 (UP者也给分!)
- 如何调试ATL中调用的Com(这个Com是C#写的组件,然后用regasm创建的Com)
- VC++请教,高手进来
- 关于我的毕业设计:vc++和分布式数据库
- 关于RichEdit的几个问题
- RegSetValueEx写成函数就执行的结果不正确。
==这里的Buffer是成员变量还是局部变量???
随便问下CStringArray也要分配吗?!CString有自己的内存管理机制