关于字符串比较的奇怪问题
AnsiString aStr = .......//从socket中获得数据
//。。。。。。。
if(aStr.SubString(11, 1) == "1") haveData = 1;
else haveData = 0;
//。。。。。。
程序开始很正常。(该程序中有双线程)
有时很奇怪, 明明获的aStr.SubString(11,1)的数据为“1”,打印出来也是“1”,但就是if语句中它不认,会执行else语句。奇怪。更可恶的是,在提取aStr.SubString(3,8), aStr.SubString(12,1)却是正常的。
各位给评个理,看看到底是什么问题。