Documentation Archive Developer
ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages


This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).

WCSXFRM(3)               BSD Library Functions Manual               WCSXFRM(3)

     wcsxfrm, wcsxfrm_l -- transform a wide string under locale

     Standard C Library (libc, -lc)

     #include <wchar.h>

     wcsxfrm(wchar_t *restrict ws1, const wchar_t *restrict ws2, size_t n);

     #include <wchar.h>
     #include <xlocale.h>

     wcsxfrm_l(wchar_t *restrict ws1, const wchar_t *restrict ws2, size_t n,
         locale_t loc);

     The wcsxfrm() function transforms a null-terminated wide character string
     pointed to by ws2, according to the current locale's collation order,
     then copies the transformed string into ws1.  No more than n wide charac-ters characters
     ters are copied into ws1, including the terminating null character.  If n
     is set to 0 (it helps to determine an actual size needed for transforma-tion), transformation),
     tion), ws1 is permitted to be a NULL pointer.

     Comparing two strings using wcscmp() after wcsxfrm() is equivalent to
     comparing two original strings with wcscoll().

     Although the wcsxfrm() function uses the current locale, the wcsxfrm_l()
     function may be passed a locale directly. See xlocale(3) for more infor-mation. information.

     Upon successful completion, wcsxfrm() returns the length of the trans-formed transformed
     formed string not including the terminating null character.  If this
     value is n or more, the contents of ws1 are indeterminate.

     setlocale(3), strxfrm(3), wcscmp(3), wcscoll(3), xlocale(3)

     The wcsxfrm() function conforms to ISO/IEC 9899:1999 (``ISO C99'').

     The current implementation of wcsxfrm() only works in single-byte
     LC_CTYPE locales, and falls back to using wcsncpy() in locales with
     extended character sets.

     Comparing two strings using wcscmp() after wcsxfrm() is not always equiv-alent equivalent
     alent to comparison with wcscoll(); wcsxfrm() only stores information
     about primary collation weights into ws1, whereas wcscoll() compares
     characters using both primary and secondary weights.

BSD                             October 4, 2002                            BSD