一个语法问题
我定义了一个结构体 struct{int a,
BOOL b
}In;
struct In *p; 指向结构体的指针
float *t;
buf[21000];
p = (In *)buf;
t= (float *)(p + 1); //词句要报错
我觉得可能是C的环境下 字节的问题
但是怎么改 能够同样实现t指向结构体的下一个单元呢?
t=(float *)(p+sizeof(In)); //报同样的错
不知道我说清楚没有 buf里面的值连续的存在结构体中的
因为是在WINSOCK下编程中遇到的问题 所以发这里了
[解决办法]
没看明白 你的buf里是什么分布 一个struct接一个float ?
char ff[5]; memset(ff,0,5);
memcpy(ff, &buf[sizeof(In)], 4); float t = itof(ff);
代码没试过
[解决办法]
t = (float *) buf[8]; //结构大小为8
[解决办法]
报的错是:unknow size of type 'incmplete struct defined at ...
应该使用sizeof(struct in)