構造体から文字列を char 値に代入しようとしています
typedef struct blah_param_s {
struct blah_param_s* param_next;
blah_param_type_t param_type;
} blah_param_t;
typedef struct blah_param_char_s {
blah_param_t param_hdr;
char* param_val;
} blah_param_char_t;
私の機能は次のとおりです。
static inline char blah_get_param_char (blah_param_t* param_p)
{
return (((blah_param_char_t*)param_p)->param_val);
}
そして、これをすべて開始する問題のあるコードは次のとおりです。
((blah_param_char_t*)new_param_p)->param_val = value;
値は「何とか」です
これは私に警告を与えます: return はキャストなしでポインタから整数を作ります
整数の場合、次のように機能します。
typedef struct blah_param_int_s {
blah_param_t param_hdr;
uint32_t param_val;
} blah_param_int_t;
static inline uint32_t blah_get_param_int (blah_param_t* param_p)
{
return (((blah_param_int_t*)param_p)->param_val);
}
どんな助けでも本当に感謝します!