This amendment defines extensions to ISO/EC 9899:1990 that provide a more complete set of multibyte and wide-character utilities, as well as alternative spellings for certain tokens. Use of these features can help promote international portability of C programs.
This amendment specifies extensions that affect various clauses of ISO/EC 9899:1990:
— To the compliance clause (clause 4), the additional header is provided by both freestanding and hosted implementations.
— To the language clause (clause 6), six additional tokens are accepted.
— To the library clause (clause 7), new capabilities are specified for the existing formatted input/output functions (7.9.6).
— To the library clause (clause 7), the additional header is provided, which defines a macro, several types, and many functions, including:
? wide-character testing functions, iswalnum for example;
? extensible wide-character classification functions, wctype and iswctype;
? wide-character case-mapping functions, towlower and towupper;
? -extensible wide-character case-mapping functions, wctrans and towctrans.
— To the library clause (clause 7), the additional header is provided, which defines several macros, several types, and many functions, including:
? formatted wide-character input/output functions, fwprint f for example;
? wide-character input/output functions, f getwc for example;
? wide-string numeric conversion functions, wcstod for example;
? wide-string general utility functions, wcscpy for example;
? a wide-string time conversion function, wcsf time;
? restartable mulnbyte/wide-character conversion functions, mbrtowc for example;
? restartable multibyte/wide-string conversion functions, mbsrtowcs and wcsrtombs.