]> pd.if.org Git - pdclib/blob - functions/wchar/wcspbrk.c
73bf721312cdc4707ebe6fb46d43368ef13e725c
[pdclib] / functions / wchar / wcspbrk.c
1 /* wcspbrk( const wchar_t *, const wchar_t * )\r
2 \r
3    This file is part of the Public Domain C Library (PDCLib).\r
4    Permission is granted to use, modify, and / or redistribute at will.\r
5 */\r
6 \r
7 #include <wchar.h>\r
8 \r
9 #ifndef REGTEST\r
10 \r
11 wchar_t * wcspbrk( const wchar_t * s1, const wchar_t * s2 )\r
12 {\r
13     const wchar_t * p1 = s1;\r
14     const wchar_t * p2;\r
15     while ( *p1 )\r
16     {\r
17         p2 = s2;\r
18         while ( *p2 )\r
19         {\r
20             if ( *p1 == *p2++ )\r
21             {\r
22                 return (wchar_t *) p1;\r
23             }\r
24         }\r
25         ++p1;\r
26     }\r
27     return NULL;\r
28 }\r
29 \r
30 #endif\r
31 \r
32 #ifdef TEST\r
33 #include <_PDCLIB_test.h>\r
34 \r
35 int main( void )\r
36 {\r
37     TESTCASE( wcspbrk( wabcde, L"x" ) == NULL );\r
38     TESTCASE( wcspbrk( wabcde, L"xyz" ) == NULL );\r
39     TESTCASE( wcspbrk( wabcdx, L"x" ) == &wabcdx[4] );\r
40     TESTCASE( wcspbrk( wabcdx, L"xyz" ) == &wabcdx[4] );\r
41     TESTCASE( wcspbrk( wabcdx, L"zyx" ) == &wabcdx[4] );\r
42     TESTCASE( wcspbrk( wabcde, L"a" ) == &wabcde[0] );\r
43     TESTCASE( wcspbrk( wabcde, L"abc" ) == &wabcde[0] );\r
44     TESTCASE( wcspbrk( wabcde, L"cba" ) == &wabcde[0] );\r
45     return TEST_RESULTS;\r
46 }\r
47 #endif\r