c语言指针的一个问题

[复制链接]
查看11 | 回复3 | 2009-4-22 10:04:32 | 显示全部楼层 |阅读模式
typedef struct
{
int type;
int layer;
void *struc;
} DXF_OBJ;
void SplitObjs(DXF_OBJ **objs)
{
int i,j,flg1;
//此处的ij值代表什么意思?
flg1=1;
while(flg1)
{
flg1=0;
for(i=(*objs)[0].type-1;i>0;i--)
{
for(j=(*objs)[0].type-1;j>0;j--)
{

if(((*objs).type==(*objs)[j].type) && i!=j)

{

switch((*objs).type)
{}}}....
不知道我的描述全部全面,我是在2个for循环时看不懂的,还有ij描述的是什么,i=(*objs)[0].type-1到底是i等于什么呢?对于指针的指针我一直听迷糊,看着就晕了...呵呵~
在线等吧~如果不全我会及时补充的........谢谢啦~

回复

使用道具 举报

千问 | 2009-4-22 10:04:32 | 显示全部楼层
你要搞i j表示什么,首先要搞清 结构体各个成员的含义 { int type; int layer; void *struc; } DXF_OBJ;i=(*objs)[0].type-1到底是i等于什么呢?答:objs是一个指针,指向一个结构体数组,(*objs)就是这个数组的首地址,(*objs)[0]就是这个数组的第一个元素,(*objs)[0].type就是该元素的type成员,i就被赋值为type成员的值减1。...
回复

使用道具 举报

千问 | 2009-4-22 10:04:32 | 显示全部楼层
objs是函数的参数,声明为二维指针,所以*objs是一个一维数组的首地址,(*objs)[0]就是这个一维数组的第一个元素,这个元素是DXF_OBJ类型的,(*objs)[0].type就是取其type成员....
回复

使用道具 举报

千问 | 2009-4-22 10:04:32 | 显示全部楼层
看人家程序太累还不如自己写一遍呢...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行