Internationalization and localization tools


String Format Function

int _snscanf_l(const char *input, size_t length, const char *format, locale_t locale [, argument ]...);

int _snwscanf_l(const wchar_t *input, size_t length, const wchar_t *format, locale_t locale [, argument ]...);

int _sntscanf_l(const TCHAR *input, size_t length, const TCHAR *format, locale_t locale [, argument ]...);

Internationalization (I18n) Function Overview

The _snscanf_l function reads up to length characters from input, into the locations given by argument, under the control of the format specification and the passed in locale. The number of converted and assigned fields is returned, or EOF in the event of an error. The behavior of _snscanf_l is undefined if copying takes place between strings that overlap.

_snwscanf_l is the wide character version of _snscanf_l; its arguments are wide-character strings.

_sntscanf_l is the Windows-only Generic version of the function; with the _MBCS or _UNICODE compiler flags determining its mapping to either _snscanf_l or _snwscanf_l.

I18n Issues

Use the appropriate version of the function as required for internationalization support, noting the following:

These functions adhere to the settings of the passed in locale argument when interpreting the format specifications. See String Formatting in C and C++ for a discussion on locale-sensitive formatting in internationalized applications.

_snscanf_l does not support multibyte hexadecimal characters.

_snwscanf_l does not support Unicode fullwidth hexadecimal characters or characters in the "compatibility zone" which is the range 0xF900 through 0xFFEF.

Recommended Replacements*

*If you're already using the recommended function, see I18n Issues for other reasons why Globalyzer is detecting the function.

String Format Functions

 

Lingoport internationalization and localization services and software