buffer too small

来源:互联网 发布:凸优化问题 编辑:程序博客网 时间:2024/06/05 17:45

参考网页:http://blog.csdn.net/zhulingfeng8726/article/details/7077341

 

今天碰到buffer too small问题,经过调试,原因出在:strState.Format("%s,%s",strState,str1[j]);这句话
参考网页,发现原因
Format中的参数为strstate字符串本身,Format在内部根据格式化参数列表会对字符串本身的内存空间进行重新分配,而如果直接采用字符串本身作为参数传入的话,这个过程中就会造成内存的冲突,而这个冲突是无法预见的。
因此,最好不要采取将字符串本身作为参数作为Format的参数,可以另外定义一个CString变量实现