c/string/byte/strxfrm

Transforms the null-terminated byte string pointed to by into the implementation-defined form such that comparing two transformed strings with strcmp gives the same result as comparing the original strings with strcoll, in the current C locale.

The first characters of the transformed string are written to destination, including the terminating null character, and the length of the full transformed string is returned, excluding the terminating null character.

The behavior is undefined if the array is not large enough. The behavior is undefined if and  overlap.

If is, then  is allowed to be a null pointer.

Return value
The length of the transformed string, not including the terminating null-character.