tail head cat sleep
QR code linking to this page

Manual Pages  — STRXFRM


strxfrm – transform a string under locale



Standard C Library (libc, -lc)


#include <string.h>

strxfrm(char * restrict dst, const char * restrict src, size_t n);

strxfrm_l(char * restrict dst, const char *restrict src, size_t n, locale_t loc);


The strxfrm() function transforms a null-terminated string pointed to by src according to the current locale collation if any, then copies the transformed string into dst. Not more than n characters are copied into dst, including the terminating null character added. If n is set to 0 (it helps to determine an actual size needed for transformation), dst is permitted to be a NULL pointer.

Comparing two strings using strcmp() after strxfrm() is equal to comparing two original strings with strcoll().

strxfrm_l() does the same, however takes an explicit locale rather than the global locale.


Upon successful completion, strxfrm() and strxfrm_l() return the length of the transformed string not including the terminating null character. If this value is n or more, the contents of dst are indeterminate.


setlocale(3), strcmp(3), strcoll(3), wcsxfrm(3)


The strxfrm() function conforms to ISO/IEC 9899:1990 ("ISO C90"). The strxfrm_l() function conforms to IEEE Std 1003.1-2008 ("POSIX.1").

STRXFRM (3) June 4, 1993

tail head cat sleep
QR code linking to this page

Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

What is this horrible fascination with Unix? The operating system of the 1960s, still gaining in popularity in the 1990s.
— Donald A. Norman