问题:
VC6中使用\来连接较长的字符串的时候就会在连接处出现一个乱码,最终导致异常,例如:
_stprintf(lpszBuffer, _T("select si_id, si_ip, si_port, si_name from serverinfo where si_count in (select min(si_count) from serverinfo where si_status = %d)"),enumAvailable);
写在一行没有任何问题,如果是
_stprintf(lpszBuffer, _T("select si_id, si_ip, si_port, si_name from serverinfo where\
si_count in (select min(si_count) from serverinfo where si_status = %d)"),
enumAvailable);
的话调试时候就会在where后面出现一个三个小竖线的乱码,引发异常
解决方案:
分行写 不要加逗号
_stprintf(lpszBuffer,
_T("select si_id,")
_T("si_ip, si_port,")
_T("si_name from serverinfo where")
……
_T("xxxxx"), //最后加一个逗号
enumAvailable);
实例:
PWCHAR szFormat = L"Accept: */*\r\n"
L"Referer: %ws\r\n"
L"Accept-Language: zh-cn\r\n"
L"Accept-Encoding: gzip, deflate\r\n"
L"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)\r\n"
L"Host: %ws\r\n"
L"Connection: Keep-Alive\r\n";
文章详细介绍了在VC6环境中,当使用连接较长字符串时,会在连接处出现乱码并引发异常的问题,并提供了解决方案。通过分行写入并避免逗号的使用,可以有效解决此问题。
1601

被折叠的 条评论
为什么被折叠?



