数据结构问题

2019-08-13 19:52发布

对于以下两个typedef struct  类型,怎样处理可以使_color_factor中的 u8 redfactor;  u8 greenfactor; u8 bluefactor;  三个量,变换为数组类型,且分别对应与_rgb_lab中的u8 rgb[3];
请大神指教。


typedef struct  
{                                                                                    
        u16 color;                        //ÑÕé«
        u8 redfactor;                        //oìé«·Öá¿
        u8 greenfactor;    //Âìé«·Öá¿
        u8 bluefactor;      //à¶é«·Öá¿
        float cal_redfactor;        //1éò»»ˉ′|àíoóμÄoìé«·Öá¿
        float cal_greeenfactor;     //1éò»»ˉ′|àíoóμÄÂìé«·Öá¿
        float cal_bluefactor;       //1éò»»ˉ′|àíoóμÄà¶é«·Öá¿
       

        float hsi_h_factor;   //H·Öá¿
        float hsi_s_factor;   //S·Öá¿
        float hsi_i_factor;   //I·Öá¿
       
        float servo_angle;  //¶æ»ú½Ç¶è×a»»êyÖμ500-2500
        float camera_angle;  //éãÏñí·μĽǶè
       
}_color_factor;



typedef struct
{
  u8 rgb[3];
  float lab[3];  
}_rgb_lab;



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
来俩不甜的
1楼-- · 2019-08-13 22:49
不能用数组,必须用指针。若用数组必须赋值。[mw_shl_code=applescript,true]{
u8 *p;
_color_factor  color_factor ;
p = (u8 *)color_factor + 2;
//现在p[0] p[1] p[2]就是你要的rgb的值
}[/mw_shl_code]
1253171658
2楼-- · 2019-08-14 03:37
你可以直接在_color_factor内将 redfactor;   greenfactor;  bluefactor定义为_rgb_lab类型的指针或者数组。_rgb_lab最好放在_color_factor的前面
cxf0153
3楼-- · 2019-08-14 04:50
不知道你的目的是什么,没描述清
jxcrgt35
4楼-- · 2019-08-14 08:26
用指针就好了。
沧海
5楼-- · 2019-08-14 10:21
 精彩回答 2  元偷偷看……
jinx
6楼-- · 2019-08-14 14:00
沧海 发表于 2017-10-14 10:15
为啥要这样麻烦呢?直接用不就好了。感觉有点多余。

感觉有逼格,再者不想在将已将写好的东西修改了。

一周热门 更多>