哪错了 ???

tracy07056 2008-11-02 02:51:53
我初学结构体,不知道下面哪错了,请指教
struct ClientRequest
{
int a;
int b;
int c;
};
ClientRequest Request;
ClientRequest.a=1;
ClientRequest.b=2;
ClientRequest.c=3;
memset(sendBuf,&Request,sizeof(Request));
send(client_sock,sendBuf,sizeof(sendBuf)+1, 0 );
...全文
39 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yize.link 2008-11-02
  • 打赏
  • 举报
回复
纠正一下.

char *buf = &ClientRequest
应该是:
char *P = (char *)&ClientRequest;




接收的话是:


ClientRequest Request;
char *P = (char *) &Request;

int len = sizeof(Request);
while(len){
int ret = recv(sock_client, P, len, 0);
if(SOCKET_ERROR == ret){
count<<"Thread:"<<GetCurrentThreadId()<<" recv过程发生错误:"<<WSAGetLastError()<<endl;
break;
}
if(!ret){
count<<"Thread:"<<GetCurrentThreadId()<<" recv过程发生中连接已断开!"<<endl;
break;
}
len -= ret;
P += ret;
if(len == 0)
cout<<"Thread:"<<GetCurrentThreadId()<<" received from:"<<sock_client<<": A.head="<<A.head<<endl;
}
yize.link 2008-11-02
  • 打赏
  • 举报
回复
我看来看去你这句就是错的.

struct
{
int a;
int b;
int c;
}ClientRequest,*LPClientRequest;

ClientRequest Request;
ClientRequest.a=1;
ClientRequest.b=2;
ClientRequest.c=3;

char *buf = &ClientRequest
send(client_sock,buf,sizeof(ClientRequest), 0 );

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧