|
发表于 2018-7-17 11:07:00
|
显示全部楼层
帮你简单测试了下,没问题
定义:
typedef struct
{
uint32_t ParamVer;
uint16_t ucBackLight;
uint8_t Addr485;
float fP;
} PARAM_T;
PARAM_T g_tParam1;
typedef struct
{
uint8_t ucBackLight;
PARAM_T tUI;
} PARAM1_T;
PARAM1_T g_tParam2;
赋初值
g_tParam1.ParamVer = 10;
g_tParam1.ucBackLight = 255;
g_tParam1.Addr485 = 100;
g_tParam1.fP = 2.55f;
测试:
printf("-------------------------------\r\n");
printf("xxxxxxxxx = %d\r\n", sizeof(g_tParam1));
printf("g_tParam1.ParamVer = %d\r\n", g_tParam1.ParamVer);
printf("g_tParam1.ucBackLight = %d\r\n", g_tParam1.ucBackLight);
printf("g_tParam1.Addr485 = %d\r\n", g_tParam1.Addr485);
printf("g_tParam1.fP = %f\r\n", g_tParam1.fP);
//g_tParam2.tUI = g_tParam1;
memcpy(&g_tParam2.tUI, &g_tParam1, sizeof(PARAM_T));
printf("g_tParam2.tUI.ParamVer = %d\r\n", g_tParam2.tUI.ParamVer);
printf("g_tParam2.tUI.ucBackLight = %d\r\n", g_tParam2.tUI.ucBackLight);
printf("g_tParam2.tUI.Addr485 = %d\r\n", g_tParam2.tUI.Addr485);
printf("g_tParam2.tUI.fP = %f\r\n", g_tParam2.tUI.fP);
效果:
|
|