widec(3S) widec(3S) NAME widec - multibyte character I/O routines SYNOPSIS #include <stdio.h> #include <widec.h> DESCRIPTION (International Functions) The functions that the multibyte character library provides for wchar_t string operations correspond to those provided by stdio(3S) as shown in the table below: _____________________________________________________________ character-based function byte-based function character-and byte-based _____________________________________________________________ character I/O getwc getc getwchar getchar fgetwc fgetc ungetwc ungetc putwc putc putwchar putchar fputwc fputc _____________________________________________________________ string I/O getws gets fgetws fgets putws puts fputws fputs _____________________________________________________________ formatted I/O printf fprintf sprintf vprintf vfprintf vsprintf scanf fscanf sscanf _____________________________________________________________ The character-based input and output routines provide the ability to work in units of characters instead of bytes. C programs using these routines can treat all characters from any of the four EUC code sets as the same size by using the wchar_t representation. getwc returns a value of type wchar_t, which corresponds to the EUC representation of a character read from the input stream. getwc uses the cswidth parameter in the character class table to determine the width of the character in its EUC form. putwc transforms a wchar_t character into EUC, and writes it to the named output stream. putwc also uses the cswidth parameter to determine the widths of characters in EUC. The macros getwchar and putwchar; the functions fgetwc, fputwc, getws, fgetws, putws, and fputws; and the format specifications %wc and %ws of the functions printf, fprintf, sprintf, vprintf, vfprintf, vsprintf, scanf, fscanf, and sscanf act as if they had made successive calls to either getwc or putwc. The character-based routines use the existing byte-based routines internally, so the buffering scheme is the same. Any program that uses these routines must include the following header files: #include <stdio.h> #include <widec.h> SEE ALSO open(2), close(2), lseek(2), pipe(2), read(2), write(2), ctermid(3S), cuserid(3S), fclose(3S), ferror(3S), fopen(3S), fread(3S), fseek(3S), popen(3S), printf(3S), scanf(3S), setbuf(3S), stdio(3S), system(3S), tmpfile(3S), tmpnam(3S), getwc(3S), getws(3S), putwc(3S), putws(3S), ungetwc(3S), wcstring(3S). Page 2