Internationalization and localization tools


C/C++ Date and Time Functions

char *ctime(const time_t *timer);

wchar_t *_wctime(const time_t *timer);

TCHAR *_tctime(const time_t *timer);

Internationalization (I18n) Function Overview

The ctime function converts the time information into a structure containing exactly 26 characters. The resulting string is of the form Tue Jan 27 13:36:27 1989\n\0 where \n is a new line character and \0 is a null character.

_wctime is supported only on Windows platforms and is the wide-character version of the function; returning a wide-character string.

_tctime is the Windows-only Generic version of the function; with the _MBCS or _UNICODE compiler flags determining its mapping to either ctime or _wctime.

I18n Issues

These functions should not be relied upon to print error messages in any language other than English, and furthermore they do not take locale into account when formatting the time string. For these reasons they should be avoided in an internationalized application. However, its worth noting that in some limited instances they still may be useful. For example, for debugging, or for writing to log files or consoles that will not be viewed by the end user.

Minimally, use strftime or wcsftime since they format dates and times using the LC_TIME category of the current locale. Or, for a more comprehensive solution, consider using the ICU package and its Date/Time formatting functions.

Recommended Replacements*

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

C/C++ Date, Time, and Currency Functions

 

Lingoport internationalization and localization services and software