The mi_char and mi_string data types

The mi_char and mi_string data types are the equivalents of the char C-language data type. These two data types are exactly the same in both storage and functionality. Use them to declare character strings in your module.

You can use the mi_char or mi_string data type to hold CHAR, VARCHAR, or IDSSECURITYLABEL data, as long as this data is not an argument or return value of a C UDR.

For HCL® Informix® GLS, you can use the mi_char and mi_string data types to store multibyte characters (NCHAR and NVARCHAR columns). However, your code must track how many bytes each character contains. You can use the HCL® Informix® GLS interface to assist with this process. For more information aboutmultibyte characters, see the HCL® Informix® GLS User's Guide.

The mi_char and mi_string data types cannot fit into an MI_DATUM structure. They must be passed by reference within C UDRs.

All data types, including mi_char and mi_string, must be passed by reference within client LIBMI applications.