| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 670 人关注过本帖
标题:如何在服务器和客户端之间传递坐标值???
只看楼主 加入收藏
little_stone
Rank: 1
等 级:新手上路
威 望:1
帖 子:163
专家分:0
注 册:2007-5-29
收藏
 问题点数:0 回复次数:5 
如何在服务器和客户端之间传递坐标值???
就是说,如果我想把服务器中某小球的位置传给客户,应该怎么做???

send函数好像只接收char* 型数据,

谁指点一下.谢谢.
搜索更多相关主题的帖子: 服务器 客户端 坐标 
2007-06-22 10:32
dragonfly
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:1024
专家分:0
注 册:2006-3-20
收藏
得分:0 
强制类型转换

2007-06-22 11:43
little_stone
Rank: 1
等 级:新手上路
威 望:1
帖 子:163
专家分:0
注 册:2007-5-29
收藏
得分:0 

能否给个例子版主???
看下我的程段有没毛病.
主机端发送:
int i;
CString buff;

buff.Format("%d,%d",info.x,info.y)
for(i=0;i<MAX_SOCKET;i++)
if(MY_SOCKET[i]!=INVALID_SOCKET);
send(MY_SOCKET[i],buff,sizeof(info),0);

客户端接收:
char buffer[1024];
memset(buffer,0,1024);
recv(SOCKET(wParam),(char*)buffer,1024,0);

MessageBox(buffer);
info.x=(int)buffer[0];
info.y=(int)buffer[2];

可是这样做老不成功,请问版主是什么原因.


2007-06-22 12:12
xjc
Rank: 1
等 级:新手上路
帖 子:95
专家分:0
注 册:2004-12-2
收藏
得分:0 
回复:(dragonfly)强制类型转换
网络都是以流字节方式传送,只有以协议来解析就能得到你想要的结果

时间是最宝贵的
2007-06-22 14:14
yihai0494
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-5-5
收藏
得分:0 
你认为buffer[0],buffer[2]分别是x,y,这是错误的。比如 x=12,y=23时,接收到的buffer 内容为"12,23"
如果你的坐标不大,你可以将其作为ASCII码保存到一个char型数组中,再发送。
如:
char a[3];
a[2] = '\0';
a[0] = x;
a[1] = y;
接收到后再将其分别转换为int型的。

天行健,君子以自强不息!
2007-08-02 18:56
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
收藏
得分:0 
send(MY_SOCKET[i],buff.GetBuffer(buff.GetLength()),buff.GetLength(),0);

这样发可以

天行健,君子以自强不息!!QQ:68660681
2007-08-02 19:03
快速回复:如何在服务器和客户端之间传递坐标值???
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025191 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved