MFC学习笔记之VC++ Debug Assertion Failed 错误(File: strex.cpp Line: 690)

转载:VC++ Debug Assertion Failed! 错误(File: strex.cpp Line: 690)_希热明玛_新浪博客

问题(File: strex.cpp Line: 690):
错误描述:在Debug模式下报错,Release模式下正常。


---------------------------
Microsoft Visual C++ Debug Library
---------------------------
Debug Assertion Failed!


Program: D:\Projects\20130906\HK-H英文\Debug\C100A.exe
File: strex.cpp
Line: 690


For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.


(Press Retry to debug the application)
---------------------------
终止(A)   重试(R)   忽略(I)   
---------------------------
错误原因:CString设计缺陷。
解决方法:在格式化浮点数时增加临时变量。格式化整数时不存在这个问题。


**********************会报错********************************
CString str;
str.Format("%.3f", 5.6);
str.Format("%-15s", str);
**********************会报错********************************


**********************正常********************************
CString str;
str.Format("%d", 5);
str.Format("%-15s", str);
**********************正常********************************


**********************解决方法********************************
CString str;
CString strTemp;
strTemp.Format("%.3f", 5.6);
str.Format("%-15s", strTemp);
**********************解决方法********************************

官方说明:在 Strex.cpp,CString::Format 与行 690 断言的 BUG

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值