我有以下結構的庫:該庫的自定義用戶數據保留
struct frame_meta_data
{
uint8_t id;
uint8_t general_field_1;
uint8_t general_field_2;
...
uint8_t user_data[16];
};
而且我希望用戶能夠自定義的數據保存到幀的對象(這是什麼user_data字段用於)。
嘗試投放USER_DATA到自定義結構然而,當:
frame_meta_data cur_frame;
...
#define USER_HDR ((struct my_user_header*)cur_frame.user_data)
我得到以下錯誤:
warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] #define USER_HDR ((struct my_user_header*)cur_frame.user_data)
我如何解決此問題?
在此先感謝。
不要投。使用'memcpy'。 – melpomene
@melpomene它會傷害我的表現... –