2012-03-11 8 views
0

各構造体にポインタを持つ構造体の配列を格納しようとしていますが、配列を作成する際に "初期化で整数型のポインタをキャストなしのポインタにする"というメッセージが表示されます。あなたがc_iflagのアドレス渡す必要がありポインタの構造

struct fl_valueags { 
    tcflag_t *fl_value; 
    flagtype_t *fl_type; 
}; 
... 
struct fl_valueags t_flags[] = { { ttyinfo->c_iflag, INPUT }, { 
    ttyinfo->c_oflag, OUTPUT }, { ttyinfo->c_cflag, CONTROL }, { 
     ttyinfo->c_lflag, LOCAL } }; 

答えて

2

fl_typeについて

struct fl_valueags t_flags[] = { { &ttyinfo->c_iflag, INPUT }, 
            { &ttyinfo->c_oflag, OUTPUT }, 
            { &ttyinfo->c_cflag, CONTROL }, 
            { &ttyinfo->c_lflag, LOCAL } }; 

を(INPUT、OUTPUTコントロールとLOCALがポインタでなければ)、それはおそらく価値ではなく、ポインタとして宣言する必要があります。

struct fl_valueags { 
    tcflag_t *fl_value; 
    flagtype_t fl_type; 
};