0
我已經定義了一些實現Modbus/RS-485應用程序的寄存器協議的數據結構。我正在編譯一個粒子電子板。結構中的Dyanmic數據類型
如何向結構添加不同的數據類型?我也試過(void)。這甚至有可能嗎?
typedef struct {
uint16_t registerAddress;
uint8_t registerSize;
void* dataType;
char description[50];
} _rgRegister;
static const _rgRegister PressureParameterRegister[6]={
{0x038, 2, float, "Measured value"},
{0x040, 1, ushort, "Parameter Id = 2 (pressure)"},
{0x041, 1, ushort, "Units Id"},
{0x042, 1, ushort, "Data Quality Id"},
{0x043, 2, float, "Off line sentinel value (default = 0.0)"},
{0x045, 1, char, "Available Units = 0x0005"}
};
另一種選擇是我把它聲明爲:
char datatype[10];
,並把它作爲:
_rgRegister.datatype = "float"
我必須有一個動態注塑數據類型的一些開關語句數據。
您可以使用'auto'關鍵字在運行時自動爲變量分配數據類型。 –
也可以在運行時使用C++'typeid-> name()'函數確定數據類型。 –