当前位置: C语言 -- 标准库 -- <wchar.h> -- wcsrchr

wcsrchr函数


概要:
#include <wchar.h>
wchar_t *wcsrchr(const wchar_t *s, wchar_t c);

描述:

该函数搜索参数c在参数s指向宽字符串中最后一次出现的位置。

终止空宽字符认为是宽字符串的一部分。


参数:
const wchar_t *s

指向宽字符串的指针。

wchar_t c

要搜索的宽字符。


返回值:

如果存在匹配宽字符,函数返回指向该宽字符的指针;如果不存在匹配宽字符,函数返回空指针。


范例:
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 
32 
33 
/*函数wcsrchr范例*/

#include <locale.h>
#include <stddef.h>
#include <wchar.h>

int main(void)
{
    setlocale(LC_ALL, "");
    
    wchar_t wStr[] = L"九月九,九个酒迷喝醉酒。九个酒杯九杯酒,九个酒迷喝九口。";
    wchar_t *pch;
    ptrdiff_t diff;

    /*输出字符串中所有'九'的位置。*/
    wprintf(L"'九'的位置: ");
    while(1)
    {
        pch = wcsrchr(wStr, L'');
        if(pch == NULL)
            break;
        else
        {
            diff = pch-wStr;
            wprintf(L"%td ", (diff+1));
            wStr[diff] = L'\0';
        }
    }
    wprintf(L"\n");
    
    return 0;
}


输出:

'九'的位置: 26 21 17 13 5 3 1


相关内容:
wmemchr 搜索指定宽字符在内存区域第一次出现位置的函数。
wcscspn 计算最大初始片段长度的函数。
wcspbrk 搜索宽字符在宽字符串中第一次出现位置的函数。
wcschr 搜索指定宽字符在宽字符串中第一次出现位置的函数。
wcsspn 计算最大初始片段长度的函数。
wcsstr 搜索子字符串在宽字符串中第一次出现位置的函数。
wcstok 拆分宽字符串的函数。