1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
#include <wchar.h> size_t wcscspn(const wchar_t *s, const wchar_t *c) { const wchar_t *a; if (!c[0]) return wcslen(s); if (!c[1]) return (s=wcschr(a=s, *c)) ? s-a : wcslen(a); for (a=s; *s && !wcschr(c, *s); s++); return s-a; } #ifdef TEST int main(void) { return 0; } #endif