急切知道答案:强制转换指针类型的问题!!!
定义如下:
struct TPData
{
double W ,H ,Ang ,Rad;
} data1={100,50,0,0};
void setcallfun(void* pdata);
{
pdata=&data1;
}
调用是
void* data=NULL;
setcallfun(data);
W = (TPData*)data->W;
H = (TPData*)data->H;
出现错误如下:E:\CGMT\Yzl\CGMTCad\CGMTDraw.cpp(28) : error C2059: syntax error : ')'
什么原因,请教!!!
问题点数:50、回复次数:7Top
1 楼lizmei001(暗黑)回复于 2002-05-13 14:18:59 得分 10
是不是w = ((TPDATA *)data)->w;Top
2 楼zf925(天下哪来那么多高手)回复于 2002-05-13 14:23:45 得分 10
struct TPData
{
double W ,H ,Ang ,Rad;
} ;
TPData data1={100,50,0,0};
void setcallfun(TPData** pdata);
{
pdata=&&data1;
}
调用是
TPData* data=NULL;
setcallfun(&data);
W = data->W;
H = data->H;
Top
3 楼peaked(forever)回复于 2002-05-13 14:24:13 得分 0
to lizmei001(暗黑)
还是不对,错误一样。Top
4 楼freelybird(阿愚)回复于 2002-05-13 14:24:38 得分 10
W = ((struct TPData*)data)->W;
Top
5 楼zhwangquan(聪明的大傻瓜)回复于 2002-05-13 14:25:26 得分 0
void setcallfun(void* pdata);多了分号:)Top
6 楼xfxia(毛毛虫)回复于 2002-05-13 14:25:44 得分 10
setcallfun函数该成如下:
void setcallfun(void** pdata);
{
*pdata = &data1;
}
调用改成setcallfun(&data);
Top
7 楼freelybird(阿愚)回复于 2002-05-13 14:47:09 得分 10
void setcallfun(void* pdata)
{
pdata = (struct TPData*)(&data1);
}
Top




