标题:数据包发送的疑惑
只看楼主
yening520
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2006-9-14
结帖率:100%
 问题点数:0 回复次数:5 
数据包发送的疑惑

char szPacket[64];

zPacket = szPacket + 2;
zPacket = SetChar( zPacket, S_UDPLOG );
zPacket = SetInteger( zPacket, num );
zPacket = SetInteger( zPacket, saddr.sin_port );
SetShort( szPacket, zPacket - szPacket );
GameWorld.SendRoom( szPacket, zPacket - szPacket, User[num].m_room );
User[num].m_port = saddr.sin_port;
这些发数据包的时候是什么意思啊 不会吧那个覆盖掉吗

搜索更多相关主题的帖子: zPacket 数据 port sin SetInteger 
2007-04-18 15:14
yening520
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2006-9-14
得分:0 
zPacket = szPacket + 2; 还有啊 这句什么意思啊 要空两位吗?
为什么啊

2007-04-18 16:05
yening520
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2006-9-14
得分:0 
char* GetInteger(char* pPacket,int& nNum)
{
nNum = (BYTE)pPacket[0] + ((BYTE)pPacket[1] << 8) + ((BYTE)pPacket[2] << 16) + ((BYTE)pPacket[3] << 24);//
return pPacket + 4;
}
还以这句 怎么移动啊 是什么意思啊

2007-04-19 13:52
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
得分:0 
以下是引用yening520在2007-4-18 16:05:20的发言:
zPacket = szPacket + 2; 还有啊 这句什么意思啊 要空两位吗?
为什么啊

SZ是该指针的头地址
+2后Z指到第3个字节


嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2007-04-19 20:20
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
得分:0 
以下是引用yening520在2007-4-19 13:52:24的发言:
char* GetInteger(char* pPacket,int& nNum)
{
nNum = (BYTE)pPacket[0] + ((BYTE)pPacket[1] << 8) + ((BYTE)pPacket[2] << 16) + ((BYTE)pPacket[3] << 24);//
return pPacket + 4;
}
还以这句 怎么移动啊 是什么意思啊
以BYTE为单位移动
大概意思好象是让NUM指象该指针的4个CHAR单位
并以INT存储

什么背景的程序

嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2007-04-19 20:24
yening520
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2006-9-14
得分:0 
回复:(song4)以下是引用yening520在2007-4-18 16:0...

这个听起来明白了 谢谢啊


2007-04-21 13:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-132884-1-1.html




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

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