3 <<strxfrm>>---transform string
10 size_t strxfrm(char *restrict <[s1]>, const char *restrict <[s2]>,
14 This function transforms the string pointed to by <[s2]> and
15 places the resulting string into the array pointed to by
16 <[s1]>. The transformation is such that if the <<strcmp>>
17 function is applied to the two transformed strings, it returns
18 a value greater than, equal to, or less than zero,
19 correspoinding to the result of a <<strcoll>> function applied
20 to the same two original strings.
22 No more than <[n]> characters are placed into the resulting
23 array pointed to by <[s1]>, including the terminating null
24 character. If <[n]> is zero, <[s1]> may be a null pointer. If
25 copying takes place between objects that overlap, the behavior
28 (NOT Cygwin:) The current implementation of <<strxfrm>> simply copies
29 the input and does not support any language-specific transformations.
32 The <<strxfrm>> function returns the length of the transformed string
33 (not including the terminating null character). If the value returned
34 is <[n]> or more, the contents of the array pointed to by
35 <[s1]> are indeterminate.
38 <<strxfrm>> is ANSI C.
40 <<strxfrm>> requires no supporting OS subroutines.
49 strxfrm (char *__restrict s1
,
50 const char *__restrict s2
,
57 if ((*s1
++ = *s2
++) != '\0')