This section contains information on the following data types used in the WebSphere MQ Everyplace C client:
The following platform-independent primitive data types are used throughout the C native APIs of WebSphere MQ Everyplace:
Typedef name | Size (no. of bytes) | Alignment | Equivalent C data type | Equivalent Java data type |
---|---|---|---|---|
MQEBYTE | 1 | byte | Unsigned char | n/a |
MQECHAR | 1 | byte | char | byte |
MQEINT32 | 4 | Even-byte | long | int |
MQEINT64 | 8 | Even-byte | longlong | long |
PMQE* | 4 | Even-byte | "*" | n/a. |
MQEH* | 4 | Even-byte | long | n/a |
MQEHANDLE_NULL represents an invalid handle value for all handle types and functions that return handle values may return this value when an error occurs.
The endian of the data types is platform-dependent. For example, on an x86 based machine a multibytes data type is ordered in little-endian, the least-significant byte occupies the lower memory address. The opposite is true on a big-endian 68k based machine. The data on a transmission medium is always big endian.
The following MQeFields data types are provided with WebSphere MQ
Everyplace:
Fields data type | Size in bytes |
---|---|
MQETYPE_UNTYPED | n/a |
MQETYPE_ASCII | 1 |
MQETYPE_UNICODE | 2 |
MQETYPE_BOOLEAN | 1 |
MQETYPE_BYTE | 1 |
MQETYPE_SHORT | 2 |
MQETYPE_INT | 4 |
MQETYPE_LONG | 8 |
MQETYPE_FLOAT | 4 |
MQETYPE_DOUBLE | 8 |
MQETYPE_ARRAYELEMENTS | 4 |
MQETYPE_FIELDS | 4 |