iCAx开思工具箱
标题:
球体函数UF_MODL_create_sphere
[打印本页]
作者:
jambo436
时间:
2004-11-8 21:11
标题:
球体函数UF_MODL_create_sphere
为什么直径变量的定义是char * diam?
如果我要画一直径是10的球体,到底怎么给定其半径,试了好象char * diam=100;和char * diam="10";都不行.
UF_MODL_create_sphere (
UF_FEATURE_SIGN sign,
tag_t targ_tag,
double center[ 3 ],
char * diam,
tag_t * sphere_tag );
作者:
tari
时间:
2004-11-8 21:27
char diam='10';
函数中用传地址的方式(&diam)试试
作者:
jambo436
时间:
2004-11-8 21:31
谢谢,tari
作者:
jambo436
时间:
2004-11-8 21:33
还是不行,显示错误;
cannot convert parameter 3 from 'char ** ' to 'char *'
作者:
jambo436
时间:
2004-11-8 21:47
我的语句是:
UF_FEATURE_SIGN sign_sphere;
tag_t *sphere_tag;
char *diam="100";
double point_of_center[3]={0,0,0};
UF_MODL_create_sphere1(sign_sphere,
point_of_center,
&diam,
sphere_tag );
运行时一个错误:'UF_MODL_create_sphere1' : cannot convert parameter 3 from 'char ** ' to 'char *'
作者:
wflying
时间:
2004-11-8 22:05
UF_FEATURE_SIGN sign_sphere=UF_NULLSIGN;
tag_t sphere_tag;
double diadou=100;
char diam[15];
double point_of_center[3]={0,0,0};
sprintf(diam,"%f",diadou);
UF_MODL_create_sphere1(sign_sphere,
point_of_center,
diam,
[$sphere_tag )]
老兄,试试行否?
作者:
jambo436
时间:
2004-11-8 22:23
可以了,谢谢这位兄台,
请说说为什么用这几句?
double diadou=100;
char diam[15];
sprintf(diam,"%f",diadou);
作者:
jambo436
时间:
2004-11-8 22:43
是不是这样理解:
先定义一个字符串数组char diam[15];
然后格式化所要设定的直径的double diadou=100到字符串数组char diam[15];,
但是不明白为什么一定要定义成字符串数组?
作者:
wflying
时间:
2004-11-9 08:44
其他方法也是可以的,建议你加强一下C语言的指针!
作者:
jambo436
时间:
2004-11-9 08:54
嘿嘿,谢谢楼上的兄弟了
欢迎光临 iCAx开思工具箱 (https://t.icax.org/)
Powered by Discuz! X3.3