Unicode from Other ILE Languages

The Unicode routines are easily accessible in the C and C++ languages if you include the appropriate header files and use the appropriate LOCALETYPE option on the C or C++ compilation command. The Unicode routines are accessible from other ILE languages, such as RPG, COBOL, and CL, although no header files are provided for these languages.

The following table shows the routines added for UCS-2 support. The support routines have a prefix of _UCS2_ or _C_UCS2_ added to the standard routine name. The Unicode routine has the same parameters as the standard (non-Unicode) routine.

_C_UCS2_btowc
_C_UCS2_fgetwc
_C_UCS2_fgetws
_C_UCS2_fprintf
_C_UCS2_fputwc
_C_UCS2_fputws
_C_UCS2_fscanf
_C_UCS2_fwprintf
_C_UCS2_fwscanf
_C_UCS2_getwc
_C_UCS2_getwchar
_C_UCS2_iswalnum
_C_UCS2_iswalpha
_C_UCS2_iswcntrl
_C_UCS2_iswctype
_C_UCS2_iswdigit
_C_UCS2_iswgraph
_C_UCS2_iswlower
_C_UCS2_iswprint
_C_UCS2_iswpunct
_C_UCS2_iswspace
_C_UCS2_iswupper
_C_UCS2_iswxdigit
_C_UCS2_mblen
_C_UCS2_mbrlen
_C_UCS2_mbrtowc
_C_UCS2_mbsinit
_C_UCS2_mbsrtowcs
_C_UCS2_printf
_C_UCS2_putwc
_C_UCS2_putwchar
_C_UCS2_scanf
_C_UCS2_snprintf
_C_UCS2_sprintf
_C_UCS2_sscanf
_C_UCS2_swprintf
_C_UCS2_swscanf
_C_UCS2_towlower
_C_UCS2_towupper
_C_UCS2_ungetwc
_C_UCS2_vfprintf
_C_UCS2_vfscanf
_C_UCS2_vfwprintf
_C_UCS2_vfwscanf
_C_UCS2_vprintf
_C_UCS2_vscanf
_C_UCS2_vsnprintf
_C_UCS2_vsprintf
_C_UCS2_vsscanf
_C_UCS2_vswprintf
_C_UCS2_vswscanf
_C_UCS2_vwprintf
_C_UCS2_vwscanf
_C_UCS2_wcsftime
_C_UCS2_wcsicmp
_C_UCS2_wcslocaleconv
_C_UCS2_wcsnicmp
_C_UCS2_wcsrtombs
_C_UCS2_wcstod32
_C_UCS2_wcstod64
_C_UCS2_wcstod128
_C_UCS2_wctob
_C_UCS2_wprintf
_C_UCS2_wscanf
_UCS2_mbstowcs
_UCS2_mbtowc
_UCS2_setlocale
_UCS2_wcrtomb
_UCS2_wcstod
_UCS2_wcstol
_UCS2_wcstoll
_UCS2_wcstombs
_UCS2_wcstoul
_UCS2_wcstoull
_UCS2_wcswidth
_UCS2_wctomb
_UCS2_wcwidth

When you use the LOCALETYPE(*LOCALEUCS2) option with either the C or C++ compiler, the default UCS-2 locale is loaded when the program starts. When you use any of the Unicode routines in the preceding table from a different language, a call to _UCS2_setlocale(LC_ALL, "") should be added when the application starts to ensure that the default UCS2 locale is loaded.

The following table shows the routines added for CCSID neutral and UTF-8 support. The routines have a prefix of _C_NEU_DM_ (for data management I/O functions), _C_NEU_IFS_ or _C_UTF_IFS (for IFS I/O functions), or _C_NEU_ or _C_UTF_ added to the standard routine name. The Unicode routine has the same parameters as the standard (non-Unicode) routine.

Routines that operate on wide characters have UTF in the prefix. Routines that do not operate on wide characters have NEU in the prefix.

_C_NEU_asctime
_C_NEU_asctime_r
_C_NEU_atof
_C_NEU_atoi
_C_NEU_catopen
_C_NEU_ctime
_C_NEU_ctime_r
_C_NEU_ctime64
_C_NEU_ctime64_r
_C_NEU_DM_clearerr
_C_NEU_DM_feof
_C_NEU_DM_ferror
_C_NEU_DM_fflush
_C_NEU_DM_fgetc
_C_NEU_DM_fgetpos
_C_NEU_DM_fgets
_C_NEU_DM_fopen
_C_NEU_DM_fprintf
_C_NEU_DM_fputc
_C_NEU_DM_fputs
_C_NEU_DM_fread
_C_NEU_DM_freopen
_C_NEU_DM_fscanf
_C_NEU_DM_fseek
_C_NEU_DM_fsetpos
_C_NEU_DM_ftell
_C_NEU_DM_fwrite
_C_NEU_DM_getc
_C_NEU_DM_getchar
_C_NEU_DM_gets
_C_NEU_DM_perror
_C_NEU_DM_printf
_C_NEU_DM_putc
_C_NEU_DM_putchar
_C_NEU_DM_puts
_C_NEU_DM_remove
_C_NEU_DM_rename
_C_NEU_DM_rewind
_C_NEU_DM_ropen
_C_NEU_DM_scanf
_C_NEU_DM_setbuf
_C_NEU_DM_setvbuf
_C_NEU_DM_tmpfile
_C_NEU_DM_tmpnam
_C_NEU_DM_ungetc
_C_NEU_DM_vfprintf
_C_NEU_DM_vfscanf
_C_NEU_DM_vprintf
_C_NEU_DM_vscanf
_C_NEU_gcvt
_C_NEU_gmtime
_C_NEU_gmtime_r
_C_NEU_IFS_clearerr
_C_NEU_IFS_fdopen
_C_NEU_IFS_feof
_C_NEU_IFS_ferror
_C_NEU_IFS_fflush
_C_NEU_IFS_fgetc
_C_NEU_IFS_fgetpos
_C_NEU_IFS_fgetpos64
_C_NEU_IFS_fgets
_C_NEU_IFS_fopen
_C_NEU_IFS_fopen64
_C_NEU_IFS_fprintf
_C_NEU_IFS_fputc
_C_NEU_IFS_fputs
_C_NEU_IFS_fread
_C_NEU_IFS_freopen
_C_NEU_IFS_freopen64
_C_NEU_IFS_fscanf
_C_NEU_IFS_fseek
_C_NEU_IFS_fseeko
_C_NEU_IFS_fseeko64
_C_NEU_IFS_fsetpos
_C_NEU_IFS_fsetpos64
_C_NEU_IFS_ftell
_C_NEU_IFS_ftello
_C_NEU_IFS_ftello64
_C_NEU_IFS_fwrite
_C_NEU_IFS_getc
_C_NEU_IFS_getchar
_C_NEU_IFS_gets
_C_NEU_IFS_perror
_C_NEU_IFS_printf
_C_NEU_IFS_putc
_C_NEU_IFS_putchar
_C_NEU_IFS_puts
_C_NEU_IFS_remove
_C_NEU_IFS_rename_keep
_C_NEU_IFS_rename_unlink
_C_NEU_IFS_rewind
_C_NEU_IFS_scanf
_C_NEU_IFS_setbuf
_C_NEU_IFS_setvbuf
_C_NEU_IFS_tmpfile
_C_NEU_IFS_tmpfile64
_C_NEU_IFS_tmpnam
_C_NEU_IFS_ungetc
_C_NEU_IFS_vfprintf
_C_NEU_IFS_vfscanf
_C_NEU_IFS_vprintf
_C_NEU_IFS_vscanf
_C_NEU_isalnum
_C_NEU_isalpha
_C_NEU_iscntrl
_C_NEU_isdigit
_C_NEU_isgraph
_C_NEU_islower
_C_NEU_isprint
_C_NEU_ispunct
_C_NEU_isspace
_C_NEU_isupper
_C_NEU_isxdigit
_C_NEU_itoa
_C_NEU_localeconv
_C_NEU_localtime
_C_NEU_localtime_r
_C_NEU_localtime64
_C_NEU_localtime64_r
_C_NEU_ltoa
_C_NEU_memicmp
_C_NEU_mktime
_C_NEU_mktime64
_C_NEU_nl_langinfo
_C_NEU_snprintf
_C_NEU_sprintf
_C_NEU_sscanf
_C_NEU_strcasecmp
_C_NEU_strchr
_C_NEU_strcspn
_C_NEU_strerror
_C_NEU_strfmon
_C_NEU_strftime
_C_NEU_strncasecmp
_C_NEU_strpbrk
_C_NEU_strptime
_C_NEU_strrchr
_C_NEU_strspn
_C_NEU_strtod
_C_NEU_strtod32
_C_NEU_strtod64
_C_NEU_strtod128
_C_NEU_strtof
_C_NEU_strtok
_C_NEU_strtok_r
_C_NEU_strtol
_C_NEU_strtold
_C_NEU_strtoll
_C_NEU_strtoul
_C_NEU_strtoull
_C_NEU_system
_C_NEU_toascii
_C_NEU_tolower
_C_NEU_toupper
_C_NEU_ultoa
_C_NEU_vsnprintf
_C_NEU_vsprintf
_C_NEU_vsscanf
_C_NEU_wctrans
_C_NEU_wctype
_C_UTF_btowc
_C_UTF_IFS_fgetwc
_C_UTF_IFS_fgetws
_C_UTF_IFS_fputwc
_C_UTF_IFS_fputws
_C_UTF_IFS_fwprintf
_C_UTF_IFS_fwscanf
_C_UTF_IFS_getwc
_C_UTF_IFS_getwchar
_C_UTF_IFS_putwc
_C_UTF_IFS_putwchar
_C_UTF_IFS_ungetwc
_C_UTF_IFS_vfwprintf
_C_UTF_IFS_vfwscanf
_C_UTF_IFS_vwprintf
_C_UTF_IFS_vwscanf
_C_UTF_IFS_wfopen
_C_UTF_IFS_wfopen64
_C_UTF_IFS_wprintf
_C_UTF_IFS_wscanf
_C_UTF_isalnum
_C_UTF_isalpha
_C_UTF_isascii
_C_UTF_iscntrl
_C_UTF_isdigit
_C_UTF_isgraph
_C_UTF_islower
_C_UTF_isprint
_C_UTF_ispunct
_C_UTF_isspace
_C_UTF_isupper
_C_UTF_iswalnum
_C_UTF_iswalpha
_C_UTF_iswcntrl
_C_UTF_iswctype
_C_UTF_iswdigit
_C_UTF_iswgraph
_C_UTF_iswlower
_C_UTF_iswprint
_C_UTF_iswpunct
_C_UTF_iswspace
_C_UTF_iswupper
_C_UTF_iswxdigit
_C_UTF_isxdigit
_C_UTF_mblen
_C_UTF_mbrlen
_C_UTF_mbrtowc
_C_UTF_mbsinit
_C_UTF_mbsrtowcs
_C_UTF_mbstowcs
_C_UTF_mbtowc
_C_UTF_regcomp
_C_UTF_regerror
_C_UTF_regexec
_C_UTF_setlocale
_C_UTF_strcoll
_C_UTF_strxfrm
_C_UTF_swprintf
_C_UTF_swscanf
_C_UTF_toascii
_C_UTF_tolower
_C_UTF_toupper
_C_UTF_towctrans
_C_UTF_towlower
_C_UTF_towupper
_C_UTF_vswprintf
_C_UTF_vswscanf
_C_UTF_wcrtomb
_C_UTF_wcscat
_C_UTF_wcschr
_C_UTF_wcscmp
_C_UTF_wcscoll
_C_UTF_wcscpy
_C_UTF_wcscspn
_C_UTF_wcsfmon
_C_UTF_wcsftime
_C_UTF_wcsicmp
_C_UTF_wcslen
_C_UTF_wcslocaleconv
_C_UTF_wcsncat
_C_UTF_wcsncmp
_C_UTF_wcsncpy
_C_UTF_wcsnicmp
_C_UTF_WCS_nl_langinfo
_C_UTF_wcspbrk
_C_UTF_wcsptime
_C_UTF_wcsrchr
_C_UTF_wcsrtombs
_C_UTF_wcsspn
_C_UTF_wcsstr
_C_UTF_wcstod
_C_UTF_wcstod32
_C_UTF_wcstod64
_C_UTF_wcstod128
_C_UTF_wcstok
_C_UTF_wcstol
_C_UTF_wcstoll
_C_UTF_wcstombs
_C_UTF_wcstoul
_C_UTF_wcstoull
_C_UTF_wcswcs
_C_UTF_wcswidth
_C_UTF_wcsxfrm
_C_UTF_wctob
_C_UTF_wctomb
_C_UTF_wcwidth
_C_UTF_wmemchr
_C_UTF_wmemcmp
_C_UTF_wmemcpy
_C_UTF_wmemmove
_C_UTF_wmemset

When you use the LOCALETYPE(*LOCALEUTF) option with either the C or C++ compiler, the default UTF locale is loaded at program startup time. If you use any of the Unicode routines in the preceding table from a different language, a call to _C_UTF_setlocale(LC_ALL, "") should be added when the application starts to ensure that the default UTF locale is loaded.



[ Top of Page | Previous Page | Next Page | Contents | Index ]