wctrans - Man Page

define character mapping


This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface may differ (consult the corresponding Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux.


#include <wctype.h>

wctrans_t wctrans(const char *charclass);
wctrans_t wctrans_l(const char *charclass, locale_t locale);


For wctrans(): The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2017 defers to the ISO C standard.

The wctrans() and wctrans_l() functions are defined for valid character mapping names identified in the current locale. The charclass is a string identifying a generic character mapping name for which codeset-specific information is required. The following character mapping names are defined in all locales: tolower and toupper.

These functions shall return a value of type wctrans_t, which can be used as the second argument to subsequent calls of towctrans() and towctrans_l().

The wctrans() and wctrans_l() functions shall determine values of wctrans_t according to the rules of the coded character set defined by character mapping information in the current locale or in the locale represented by locale, respectively (category LC_CTYPE).

The values returned by wctrans() shall be valid until a call to setlocale() that modifies the category LC_CTYPE.

The values returned by wctrans_l() shall be valid only in calls to towctrans_l() with a locale represented by locale with the same LC_CTYPE category value.

The behavior is undefined if the locale argument to wctrans_l() is the special locale object LC_GLOBAL_LOCALE or is not a valid locale object handle.

Return Value

The wctrans() and wctrans_l() functions shall return 0 and may set errno to indicate the error if the given character mapping name is not valid for the current locale (category LC_CTYPE); otherwise, they shall return a non-zero object of type wctrans_t that can be used in calls to towctrans() and towctrans_l().


These functions may fail if:


The character mapping name pointed to by charclass is not valid in the current locale.

The following sections are informative.



Application Usage




Future Directions


See Also


The Base Definitions volume of POSIX.1-2017, <wctype.h>

Referenced By

towctrans(3p), wctype.h(0p).

2017 IEEE/The Open Group POSIX Programmer's Manual