在Qt项目开发中,经常会碰到自定义结构体和字符数组之间的转换问题,不妨假设结构体名字为custom_struct, 字符数组名字为array_data

1.QByteArray转换为自定义结构体

1
custom_struct *struct_data = reinterpret_cast<custom_struct *>(array_data.data());

2.自定义结构体转换为QByteArray

1
2
QByteArray array_data;
array_data.append((char*)&struct_data, sizeof(struct_data));