lstrcmpW 函数 (winbase.h)

比较两个字符串。 比较是区分大小写的。

若要执行不区分大小写的比较,请使用 lstrcmpi 函数。

语法

int lstrcmpW(
  [in] LPCWSTR lpString1,
  [in] LPCWSTR lpString2
);

参数

[in] lpString1

类型: LPCTSTR

要比较的第一个以 null 结尾的字符串。

[in] lpString2

类型: LPCTSTR

要比较的第二个以 null 结尾的字符串。

返回值

类型: int

如果 lpString1 指向的字符串小于 lpString2 指向的字符串,则返回值为负。 如果 lpString1 指向的 字符串大于 lpString2 指向的字符串,则返回值为正。 如果字符串相等,则返回值为零。

注解

lstrcmp 函数通过检查第一个字符相互比较、第二个字符相互比较等方式比较两个字符串,直到发现不相等或到达字符串的末尾。

请注意, lpString1lpString2 参数必须以 null 结尾,否则字符串比较可能不正确。

函数使用当前线程区域设置调用 CompareStringEx,并从结果中减去 2,以维护用于比较字符串的 C 运行时约定。

用户) 在设置时或通过控制面板选择的语言 (语言区域设置确定哪个字符串 (更大,或者字符串是否) 相同。 如果未选择语言 (用户区域设置) ,系统会使用默认值执行比较。

使用双字节字符集 (DBCS) 版本的系统,此函数可以比较两个 DBCS 字符串。

lstrcmp 函数使用单词排序,而不是字符串排序。 单词排序对连字符和撇号的处理方式不同于它处理非字母数字的其他符号,以确保“coop”和“co-op”等单词在排序列表中保持一起。 有关单词排序和字符串排序的详细讨论,请参阅 处理应用程序中的排序

安全备注

有关选择比较函数的安全注意事项,请参阅 安全注意事项:国际功能

注意

winbase.h 标头将 lstrcmp 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 winbase.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

CompareString

CompareStringEx

CompareStringOrdinal

概念性

其他资源

引用

字符串

lstrcat

lstrcmpi

lstrcpy

lstrlen