Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ setlocale(3C) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

catgets(3C)

catopen(3C)

ctime(3C)

ctype(3C)

environ(5)

fprintf(3S)

getdate(3C)

gettxt(3C)

localeconv(3C)

mbchar(3C)

mbstring(3C)

strcoll(3C)

strftime(3C)

strtod(3C)

strxfrm(3C)






       setlocale(3C)                                          setlocale(3C)


       NAME
             setlocale - modify and query a program's locale

       SYNOPSIS
             #include <locale.h>
             char *setlocale(int category, const char *locale);

       DESCRIPTION
             setlocale selects the appropriate piece of the program's
             locale as specified by the category and locale arguments.  The
             category argument may have the following values: LC_CTYPE,
             LC_NUMERIC, LC_TIME, LC_COLLATE, LC_MONETARY, LC_MESSAGES and
             LC_ALL.  These names are defined in the locale.h header file.
             LC_CTYPE affects the behavior of the character handling
             functions (isalpha, tolower, and so on) and the multibyte
             character functions (such as mbtowc and wctomb).  LC_NUMERIC
             affects the decimal-point and thousands separator characters
             for the formatted input/output functions and the string
             conversion functions as well as the non-monetary formatting
             information returned by localeconv [see localeconv(3C)].
             LC_TIME affects the behavior of functions such as ascftime,
             cftime, and strftime.  LC_COLLATE affects the behavior of
             functions such as strcoll and strxfrm.  LC_MONETARY affects
             the monetary formatted information returned by localeconv.
             LC_MESSAGES affects the behavior of functions such as gettxt,
             catopen, catclose, and catgets [see catopen(3C) and
             catgets(3C)].  LC_ALL names the program's entire locale.

             Each category corresponds to a set of databases that contain
             the relevant information for each defined locale.  The
             location of the system's database is given by the following
             path, /usr/lib/locale/locale/category, where locale and
             category are the names of locale and category, respectively.
             For example, the database for the LC_CTYPE category for the
             ``german'' locale would be found in
             /usr/lib/locale/german/LC_CTYPE.

             A value of ``C'' for locale specifies the default environment.

             A value of "" for locale specifies that the locale should be
             taken from environment variables.  For each of the above
             categories (not LC_ALL), the first of three environment
             variables with a nonempty value is used: LC_ALL, the
             category's name (e.g., LC_CTYPE), and LANG.




                           Copyright 1994 Novell, Inc.               Page 1













      setlocale(3C)                                          setlocale(3C)


            At program startup, the equivalent of

                  setlocale(LC_ALL, "C")

            is executed.  This has the effect of initializing each
            category to the locale described by the locale ``C.''

            If a pointer to a string is given for locale, setlocale
            attempts to set the locale for the given category to locale.
            If setlocale succeeds, the description of the new locale is
            returned.  If setlocale fails, a null pointer is returned and
            the program's locale is not changed.

            For category LC_ALL, the behavior is slightly different.  If a
            pointer to a string is given for locale and LC_ALL is given
            for category, setlocale attempts to set the locale for all the
            categories to locale.  The locale may be a simple locale,
            consisting of a single locale, or a composite locale.  A
            composite locale is a string returned by a previous call to
            setlocale with LC_ALL for which the locale did not consist of
            identical category values.  If setlocale fails to set the
            locale for any category, a null pointer is returned and the
            program's locale for all categories is not changed.
            Otherwise, a description of the new locale is returned.

            A null pointer for locale causes setlocale to return the
            current locale associated with the category.  The program's
            locale is not changed.

         Files
            /usr/lib/locale/C/LC_CTYPE          LC_CTYPE database for the
                                                C locale
            /usr/lib/locale/C/LC_NUMERIC        LC_NUMERIC database for
                                                the C locale
            /usr/lib/locale/C/LC_TIME           LC_TIME database for the C
                                                locale
            /usr/lib/locale/C/LC_COLLATE        LC_COLLATE database for
                                                the C locale
            /usr/lib/locale/C/LC_MESSAGES       LC_MESSAGES database for
                                                the C locale
            /usr/lib/locale/C/LC_MONETARY       LC_MONETARY database for
                                                the C locale
            /usr/lib/locale/locale/category     files containing the
                                                locale-specific
                                                information for each
                                                locale and category


                          Copyright 1994 Novell, Inc.               Page 2













       setlocale(3C)                                          setlocale(3C)


       REFERENCES
             catgets(3C), catopen(3C), ctime(3C), ctype(3C), environ(5),
             fprintf(3S), getdate(3C), gettxt(3C), localeconv(3C),
             mbchar(3C), mbstring(3C), strcoll(3C), strftime(3C),
             strtod(3C), strxfrm(3C)











































                           Copyright 1994 Novell, Inc.               Page 3








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026