📜  C C++中的wcsncmp()函数(1)

📅  最后修改于: 2023-12-03 14:59:36.141000             🧑  作者: Mango

C/C++中的wcsncmp()函数

简介

wcsncmp()是C/C++标准库中的一个函数,用于比较两个宽字符字符串的前n个字符。它返回一个整数来表示比较结果。

语法
int wcsncmp(const wchar_t* str1, const wchar_t* str2, size_t n);
参数
  • str1: 指向第一个要比较的宽字符字符串的指针。
  • str2: 指向第二个要比较的宽字符字符串的指针。
  • n: 限制比较的字符数。
返回值
  • 若str1小于str2,则返回一个负整数。
  • 若str1等于str2,则返回0。
  • 若str1大于str2,则返回一个正整数。
示例
#include <wchar.h>
#include <stdio.h>

int main() {
    wchar_t str1[] = L"Hello";
    wchar_t str2[] = L"World";
    
    int result = wcsncmp(str1, str2, 3);
    
    if (result < 0) {
        wprintf(L"%ls is less than %ls\n", str1, str2);
    } else if (result > 0) {
        wprintf(L"%ls is greater than %ls\n", str1, str2);
    } else {
        wprintf(L"%ls is equal to %ls\n", str1, str2);
    }
    
    return 0;
}

输出:

Hel is less than Wor
注意事项
  • wcsncmp()函数比较的是宽字符字符串,而不是普通的字符字符串。
  • 该函数逐个比较字符,直到遇到要比较的字符数达到限制n,或者遇到字符串结束符'\0'为止。
  • 若要比较整个宽字符字符串,可以将n设置为wcslen(str1)+1或者wcslen(str2)+1。