NAME | SYNOPSIS | DESCRIPTION | USAGE | ATTRIBUTES | SEE ALSO
#include <euc.h>int csetlen(int codeset);
#include <widec.h>int wcsetno(wchar_t pc);
Both csetlen() and csetcol() take a code set number codeset , which must be 0, 1, 2, or 3. The csetlen() function returns the number of bytes needed to represent a character of the given Extended Unix Code (EUC) code set, excluding the single-shift characters SS2 and SS3 for codesets 2 and 3. The csetcol() function returns the number of columns a character in the given EUC code set would take on the display.
The csetno() function is implemented as a macro that returns a codeset number (0, 1, 2, or 3) for the EUC character whose first byte is c . For example,
#include<euc.h> ... x+=csetcol(csetno(c));
increments a counter "x" (such as the cursor position) by the width of the character whose first byte is c .
The wcsetno() function is implemented as a macro that returns a codeset number (0, 1, 2, or 3) for the given process code character pc . For example,
#include<euc.h> #include<widec.h> ... x+=csetcol(wcsetno(pc));
increments a counter "x" (such as the cursor position) by the width of the Process Code character pc .
The cset() , csetlen() , csetcol() , csetno() , and wcsetno() functions can be used safely in multithreaded applications, as long as setlocale(3C) is not being called to change the locale.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
MT-Level | MT-Safe with exceptions |
NAME | SYNOPSIS | DESCRIPTION | USAGE | ATTRIBUTES | SEE ALSO