Device Monitoring Studio natively supports the following integer types:
| Type Name | Other Valid Names | Typedefs in stddefs.h | Description | Range |
|---|---|---|---|---|
bool | N/A | N/A | One-byte boolean value. Displayed as “true” and “false”. | N/A |
char | signed char | CHAR, int8, __int8 | 8-bit signed character | -27 to 27 - 1 |
wchar_t | N/A | WCHAR | 16-bit UNICODE character | 0 to 216 - 1 |
unsigned char | N/A | UCHAR, BYTE, uint8 | 8-bit unsigned character | 0 to 28 - 1 |
short | signed short, short int, signed short int | SHORT, int16, __int16 | 16-bit signed integer | -215 to 215 - 1 |
unsigned short | unsigned short int | USHORT, WORD, uint16 | 16-bit unsigned integer | 0 to 216 - 1 |
int | signed int, signed | INT, int32, __int32 | 32-bit signed integer | -231 to 231 - 1 |
unsigned int | unsigned | UINT, uint32 | 32-bit unsigned integer | 0 to 232 - 1 |
long | signed long, long int, signed long int | LONG | 32-bit signed integer | -231 to 231 - 1 |
unsigned long | unsigned long int | ULONG, DWORD | 32-bit unsigned integer | 0 to 232 - 1 |
__int64 | N/A | LONGLONG, int64 | 64-bit signed integer | -263 to 263 - 1 |
unsigned __int64 | N/A | ULONGLONG, FILETIME, uint64 | 64-bit unsigned integer | 0 to 264 - 1 |
Two modifiers, little_endian and big_endian may be used to change the default byte ordering of a type. They may be used directly in declaring fields:
struct A
{
big_endian short value;
};
or in typedef declaration to create a new type:
typedef big_endian short b_short;
Note that #pragma byte_order directive may still be used to change default byte ordering for the rest of a scope. If little_endian or big_endian modifier is present, it always overwrites the current default.
Device Monitoring Studio natively supports the following floating-point types:
| Type Name | Description | Size, in Bytes | Range |
|---|---|---|---|
float | Single-precision floating-point type, according to IEEE 754-1985 | 4 | 3.4∙10±38 (7 digits) |
double | Double-precision floating-point type, according to IEEE 754-1985 | 8 | 1.7∙10±308 (15 digits) |
Device Monitoring Studio natively supports the following string types:
| Type Name | Description |
|---|---|
string | Null-terminated ANSI string (each character occupies single byte). |
wstring | Null-terminated UNICODE string (each character occupies two bytes). |