The Open Group Base Specifications Issue 7
IEEE Std 1003.1-2008, 2016 Edition
Copyright © 2001-2016 The IEEE and The Open Group

#### NAME

> mbsinit - determine conversion object status

#### SYNOPSIS

> ``#include <wchar.h>
> int mbsinit(const mbstate_t *`ps`);
> ``

#### DESCRIPTION

> [CX] 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-2008 defers to the ISO C standard.

> If ps is not a null pointer, the mbsinit() function shall determine whether the object pointed to by ps describes an initial conversion state.

#### RETURN VALUE

> The mbsinit() function shall return non-zero if ps is a null pointer, or if the pointed-to object describes an initial conversion state; otherwise, it shall return zero.

> If an mbstate_t object is altered by any of the functions described as "restartable", and is then used with a different character sequence, or in the other conversion direction, or with a different LC_CTYPE category setting than on earlier function calls, the behavior is undefined.

#### ERRORS

> No errors are defined.

The following sections are informative.

#### EXAMPLES

> None.

#### APPLICATION USAGE

> The mbstate_t object is used to describe the current conversion state from a particular character sequence to a wide-character sequence (or vice versa) under the rules of a particular setting of the LC_CTYPE category of the current locale.

> The initial conversion state corresponds, for a conversion in either direction, to the beginning of a new character sequence in the initial shift state. A zero valued mbstate_t object is at least one way to describe an initial conversion state. A zero valued mbstate_t object can be used to initiate conversion involving any character sequence, in any LC_CTYPE category setting.

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> mbrlen, mbrtowc, mbsrtowcs, wcrtomb, wcsrtombs

> XBD <wchar.h>

#### CHANGE HISTORY

> First released in Issue 5. Included for alignment with ISO/IEC 9899:1990/Amendment 1:1995 (E).

End of informative text.

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2016 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]