我是C中的一个新手。我试图在main之外创建一个typedef
结构,然后创建一个指针typedef
。然后将此指针传递给另一个函数。但是,我收到错误。这是推动我疯了。谢谢非常提前多..使用指针访问结构成员
typedef struct rem_info
{
char ufrag[80];
char pwd[80];
unsigned comp_cnt;
pj_sockaddr def_addr[PJ_ICE_MAX_COMP];
unsigned cand_cnt;
pj_ice_sess_cand cand[PJ_ICE_ST_MAX_CAND];
} rem_info;
void reset_rem_info(rem_info *prem)
{
pj_bzero(prem, sizeof(rem_info));
}
int main()
{
rem_info *prem;
reset_rem_info(&prem);
return 0;
}
错误:
*WARNING**:ex7.c:51:1: warning: passing argument 1 of ‘reset_rem_info’ from incompatible pointer type [enabled by default]
reset_rem_info(&prem);
^
ex7.c:41:6: note: expected ‘struct rem_info *’ but argument is of type ‘struct rem_info **’
void reset_rem_info(rem_info *prem)
尝试更改'reset_rem_info(&prem);'''reset_rem_info(prem);'您不需要取消引用指针 – jpw 2015-02-07 17:07:56
此标题“*使用指针访问结构成员*”是误导性的,因为问题是**不**关于访问结构的**成员**,但关于访问**整个**结构 – alk 2015-02-07 17:16:56
我同意...实际上,需要在一个点上的代码来访问结构成员。但是在达到那个点之前我被卡住了。但是非常感谢您的回复 – bislinux 2015-02-07 17:41:08