strxfrm man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

STRXFRM(3C)							   STRXFRM(3C)

       strxfrm - string transformation

       #include <string.h>

       size_t strxfrm(char *restrict s1, const char *restrict s2, size_t n);

       The  strxfrm()  function	 transforms  the  string  pointed to by s2 and
       places the resulting string into the array pointed to by s1. The trans‐
       formation  is  such  that  if  strcmp(3C) is applied to two transformed
       strings, it returns a value greater than, equal to or less than 0, cor‐
       responding  to the result of strcoll(3C) applied to the same two origi‐
       nal strings. No more than n bytes are placed into the  resulting	 array
       pointed	to  by s1, including the terminating null byte.	 If n is 0, s1
       is permitted to be a null  pointer.  If	copying	 takes	place  between
       objects that overlap, the behavior is undefined.

       The strxfrm() function does not change the setting of errno if success‐

       Since no return value is reserved to indicate an error, an  application
       wishing	to check for error situations should set errno to 0, then call
       strxfrm(), then check errno.

       Upon successful completion, strxfrm() returns the length of the	trans‐
       formed  string  (not including the terminating null byte). If the value
       returned is n or more, the contents of the array pointed to by  s1  are

       On  error,  strxfrm()  may set errno but no return value is reserved to
       indicate the error.

       The transformation function is such that two transformed strings can be
       ordered	by strcmp(3C) as appropriate to collating sequence information
       in the program's locale (category LC_COLLATE).

       The fact that when n is 0, s1 is permitted to be	 a  null  pointer,  is
       useful to determine the size of the s1 array prior to making the trans‐

       Example 1 A sample of using the strxfm() function.

       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);


	   LC_COLLATE database for locale

       See attributes(5) for descriptions of the following attributes:

       │CSI		    │ Enabled		      │
       │Interface Stability │ Standard		      │
       │MT-Level	    │ MT-Safe with exceptions │

       The  strxfrm()  function can be used safely in a multithreaded applica‐
       tion, as long as setlocale(3C)  is  not	being  called  to  change  the

       localedef(1),   setlocale(3C),	strcmp(3C),  strcoll(3C),  wscoll(3C),
       attributes(5), environ(5), standards(5)

				 Dec 10, 2003			   STRXFRM(3C)

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net