天天看点

一个数组下标错误引起的字符串错误

有个对象 例如 

class myClass{

public:

CString mName; 

}

声明一个对象数组:myClass tObjs[10]; 

然后有个下标tIndex,

赋值:

tObjs[tIndex].mName = "旺旺"; 

然后就报错了: 

(mfc120d.dll)... 处有未经处理的异常:0xC00000005:读取位置0xFFFFFFF4时发生访问冲突。

一看,是在atlsimpstr.h里面的GetLength()函数中,我把整个工程搜索了一遍,没有发现调GetLength()整个函数的呀。

一行行调试才发现,是下标给错了,tIndex = -1。 

一个数组下标错误引起的字符串错误