如何比较两个值,例如:
TCHAR s[100];
CHAR d[100];这两个变量都有值,那么如何比较它们的值呢?
发布于 2009-11-24 20:12:34
在尝试比较之前,我会将这两个值转换为相同的类型。
BOOL UnicodeToAnsi(LPWSTR pszwUniString, LPSTR pszAnsiBuff, DWORD dwAnsiBuffSize){
int iRet = 0;
iRet = WideCharToMultiByte(
CP_ACP,
0,
pszwUniString,
-1,
pszAnsiBuff,
dwAnsiBuffSize,
NULL,
NULL
);
return ( 0 != iRet );}
BOOL AnsiToUnicode(LPSTR pszAnsiString, LPWSTR pszwUniBuff, DWORD dwUniBuffSize){
int iRet = 0;
iRet = MultiByteToWideChar(
CP_ACP,
0,
pszAnsiString,
-1,
pszwUniBuff,
dwUniBuffSize
);
return ( 0 != iRet );}
发布于 2009-11-24 20:23:11
使用lexicographical_compare和像这样的函数
bool mycomp (TCHAR c1, char c2)
{ return tolower(c1)<tolower(c2); }
bool mycomp (char c1, TCHAR c2)
{ return tolower(c1)<tolower(c2); }https://stackoverflow.com/questions/1789633
复制相似问题