C++官网参考链接:https://cplusplus.com/reference/cwchar/wcsncmp/
函数
wcsncmp
int wcsncmp (const wchar_t* wcs1, const wchar_t* wcs2, size_t num);
比较两个宽字符串的字符
比较C宽字符串wcs1的最多num个字符与C宽字符串wcs2的字符。
这个函数开始比较每个宽字符串的第一个字符。如果它们彼此相等,则继续执行以下对,直到字符不同,直到到达一个终止的空宽字符,或者直到两个宽字符串中的num个字符匹配,以先发生的情况为准。
这相当于宽字符strncmp(
形参
wcs1
要比较的宽字符串。
wcs2
要比较的宽字符串。
num
要比较的最大字符数。
size_t是无符号整型。
返回值
返回一个整数值,指示宽字符串之间的关系:
零值表示两个字符串中比较的字符组成相同的字符串。
大于零的值表示第一个不匹配的字符在wcs1中的值大于wcs2中的值;而小于零的值则表示相反的情况。
用例
/* wcsncmp example */
#include
#include
int main ()
{
wchar_t wcs[][5] = { L"R2D2" , L"C3PO" , L"R2A6" };
int n;
wprintf (L"Looking for R2 astromech droids...\n");
for (n=0 ; n<3 ; n++)
if (wcsncmp (wcs[n],L"R2xx",2) == 0)
{
wprintf (L"found %ls\n",wcs[n]);
}
return 0;
}
输出:
另请参考
strncmp Compare characters of two strings (function)
wcscmp Compare two strings (function)
wmemcmp Compare two blocks of wide characters (function)
wcsrchr Locate last occurrence of character in wide string (function)
wcsspn Get span of character set in wide string (function)