Linux and UNIX Man Pages

Test Your Knowledge in Computers #405
Difficulty: Medium
Cygwin consists of three parts: a dynamic-link library (DLL) as an API compatibility layer in the form of a C standard library providing a substantial part of the POSIX API functionality, an extensive collection of software tools and applications that provide a Unix-like look and feel, and an MOTIF-based window manager.
True or False?
Linux & Unix Commands - Search Man Pages

mbsinit(3) [linux man page]

MBSINIT(3)						     Linux Programmer's Manual							MBSINIT(3)

NAME
mbsinit - test for initial shift state SYNOPSIS
#include <wchar.h> int mbsinit(const mbstate_t *ps); DESCRIPTION
Character conversion between the multibyte representation and the wide character representation uses conversion state, of type mbstate_t. Conversion of a string uses a finite-state machine; when it is interrupted after the complete conversion of a number of characters, it may need to save a state for processing the remaining characters. Such a conversion state is needed for the sake of encodings such as ISO-2022 and UTF-7. The initial state is the state at the beginning of conversion of a string. There are two kinds of state: The one used by multibyte to wide character conversion functions, such as mbsrtowcs(3), and the one used by wide character to multibyte conversion functions, such as wcsr- tombs(3), but they both fit in a mbstate_t, and they both have the same representation for an initial state. For 8-bit encodings, all states are equivalent to the initial state. For multibyte encodings like UTF-8, EUC-*, BIG5 or SJIS, the wide character to multibyte conversion functions never produce non-initial states, but the multibyte to wide-character conversion functions like mbrtowc(3) do produce non-initial states when interrupted in the middle of a character. One possible way to create an mbstate_t in initial state is to set it to zero: mbstate_t state; memset(&state,0,sizeof(mbstate_t)); On Linux, the following works as well, but might generate compiler warnings: mbstate_t state = { 0 }; The function mbsinit() tests whether *ps corresponds to an initial state. RETURN VALUE
mbsinit() returns nonzero if *ps is an initial state, or if ps is a null pointer. Otherwise it returns 0. CONFORMING TO
C99. NOTES
The behavior of mbsinit() depends on the LC_CTYPE category of the current locale. SEE ALSO
mbsrtowcs(3), wcsrtombs(3) COLOPHON
This page is part of release 3.27 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. GNU
2000-11-20 MBSINIT(3)

Check Out this Related Man Page

MBSINIT(3)						     Linux Programmer's Manual							MBSINIT(3)

NAME
mbsinit - test for initial shift state SYNOPSIS
#include <wchar.h> int mbsinit(const mbstate_t *ps); DESCRIPTION
Character conversion between the multibyte representation and the wide character representation uses conversion state, of type mbstate_t. Conversion of a string uses a finite-state machine; when it is interrupted after the complete conversion of a number of characters, it may need to save a state for processing the remaining characters. Such a conversion state is needed for the sake of encodings such as ISO-2022 and UTF-7. The initial state is the state at the beginning of conversion of a string. There are two kinds of state: The one used by multibyte to wide character conversion functions, such as mbsrtowcs(3), and the one used by wide character to multibyte conversion functions, such as wcsr- tombs(3), but they both fit in a mbstate_t, and they both have the same representation for an initial state. For 8-bit encodings, all states are equivalent to the initial state. For multibyte encodings like UTF-8, EUC-*, BIG5 or SJIS, the wide character to multibyte conversion functions never produce non-initial states, but the multibyte to wide-character conversion functions like mbrtowc(3) do produce non-initial states when interrupted in the middle of a character. One possible way to create an mbstate_t in initial state is to set it to zero: mbstate_t state; memset(&state,0,sizeof(mbstate_t)); On Linux, the following works as well, but might generate compiler warnings: mbstate_t state = { 0 }; The function mbsinit() tests whether *ps corresponds to an initial state. RETURN VALUE
mbsinit() returns nonzero if *ps is an initial state, or if ps is a NULL pointer. Otherwise it returns 0. CONFORMING TO
C99. NOTES
The behavior of mbsinit() depends on the LC_CTYPE category of the current locale. SEE ALSO
mbsrtowcs(3), wcsrtombs(3) COLOPHON
This page is part of release 3.53 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. GNU
2000-11-20 MBSINIT(3)

Featured Tech Videos