今天要把 float 、double类型转换为字节序列通过串口发送,于是写了个接口,不知能否通用,望大家指正。
如下:
//字节流到类型T
template<class DATA_TYPE>
void import_data(DATA_TYPE &dest, const char *pdest);
{
char *ptemp = (char*)&dest;
int len = sizeof(dest) - 1;
for(int i = 0; i <= len; i++)
ptemp[i] = pdest[len - i];
}
//类型T到字节流
template<class DATA_TYPE>
void export_data(const DATA_TYPE &src, char *pdest)
{
char *ptemp = (char*)&src;
int len = sizeof(src) - 1;
for(int i = 0; i <= len; i++)
pdest[i] = ptemp[len - i];
}