strxfrm(3C) UNIX System V(C Development Set) strxfrm(3C)
NAME
strxfrm - string transformation
SYNOPSIS
#include <string.h>
sizet strxfrm (char *s1, const char *s2, sizet n);
DESCRIPTION
strxfrm transforms the string s2 and places the resulting string into the
array s1. The transformation is such that if strcmp is applied to two
transformed strings, it returns a value greater than, equal to, or less
than zero, corresponding to the result of the strcoll function applied to
the same two original strings. The transformation is based on the
program's locale for category LCCOLLATE [see setlocale(3C)].
No more than n characters will be placed into the resulting array pointed
to by s1, including the terminating null character. If n is 0, then s1 is
permitted to be a null pointer. If copying takes place between objects
that overlap, the behavior is undefined.
strxfrm returns the length of the transformed string (not including the
terminating null character). If the value returned is n or more, the
contents of the array s1 are indeterminate.
EXAMPLE
The value of the following expression is the size of the array needed to
hold the transformation of the string pointed to by s.
1 + strxfrm(NULL, s, 0);
FILES
/usr/lib/locale/locale/LCCOLLATE
LCCOLLATE database for locale.
SEE ALSO
colltbl(1M) in the System Administrator's Reference Manual.
setlocale(3C), strcoll(3C), string(3C), environ(5).
DIAGNOSTICS
On failure, strxfrm returns (sizet) -1.
10/89 Page 1