[Go to CFHT Home Page] Man Pages
Back to Software Index  BORDER=0Manpage Top Level
    cset(3I) manual page Table of Contents

Name

cset, csetlen, csetcol, csetno, wcsetno - get information on EUC codesets

Synopsis

#include <euc.h>

int csetlen(int codeset);

int csetcol(int codeset);

int csetno(unsigned char c);

#include <widec.h>

int wcsetno(wchar_t pc);

MT-Level

MT-Safe with exceptions

Description

Both csetlen() and csetcol() take a code set number codeset, which must be 0, 1, 2, or 3. csetlen() 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. csetcol() returns the number of columns a character in the given EUC code set would take on the display.

csetno() is 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.

wcsetno() is 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.

See Also

setlocale(3C) , euclen(3I)

Notes

cset, csetlen, csetcol, csetno and wcsetno can be used safely in a multi-thread application, as long as setlocale(3C) is not being called to change the locale.


Table of Contents