为什么CSocket接收INT数据会错误..在线等待...

lzd lzd 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
客户端代码
struct OpenPoint
{
short Game_Function;
char UserName[20];
int mOpenPoint;
};

CSocket m_pSocket;
OpenPoint m_OpenPoint;

char* CharUserName="daf"
ZeroMemory(&m_OpenPoint,sizeof(OpenPoint));
m_OpenPoint.Game_Function=2;
strcpy(m_OpenPoint.UserName,CharUserName);
m_OpenPoint.UserName[strlen(CharUserName)]='\0';
m_OpenPoint.mOpenPoint=100;


int send = 0;
while(send<sizeof(OpenPoint))
{
int nCharSend=m_pSocket->Send((void*)(&m_OpenPoint+send),sizeof(OpenPoint)-send,0);
send+=nCharSend;
}


服务器代码

struct OpenPoint
{
char UserName[20];
int mOpenPoint;
};

CSocket m_pServerSocket;
OpenPoint m_OpenPoint;
short temp;
m_pServerSocket->Receive(&temp,sizeof(short),0);
switch(temp)
{

case 0:
{
break;
}

case 2:
{
ZeroMemory(&m_OpenPoint,sizeof(OpenPoint));
int receive = 0;
while(receive<sizeof(OpenPoint))
{
int nCharSend=m_pServerSocket->Receive((void*)(&m_OpenPoint+receive),sizeof(OpenPoint)-receive,0);
receive+=nCharSend;
}
}

为什么接收到的m_pServerSocket.mOpenPoint=6553600(本来应该是100)而m_pServerSocket.UserName则正常?
...全文

相关推荐

mqtt-influxdb:这是一个用 Python 编写的 MQTT 到 InfluxDB 的桥接器

mqtt-influxdb 这是一个用 Python 编写的 MQTT 到 InfluxDB 的桥接器。 目前不支持 SSL MQTT。 如果您希望根据需要自定义此脚本(我假设 MQTT 消息是单个数据点),请编辑 sendToDB(...) 函数。

荒腔走兽

基于VC++与MFC的仿QQ客户端开发实战:架构设计与核心模块实现

Windows桌面开发是理解操作系统原理与图形界面编程的重要领域。其核心在于事件驱动模型与消息循环机制,通过封装系统API构建高效的原生应用。在技术价值上,它强调性能优化、资源管理及与操作系统的深度集成,尤其适合对执行效率有严格要求的工具软件。应用场景广泛,从传统办公软件到工业控制界面均有涉及。本文以即时通讯(IM)客户端为例,深入剖析了使用VC++与MFC技术栈实现一个完整项目的全过程,涵盖了**网络通信**中的TCP粘包处理与心跳机制,以及**多线程**编程下的UI同步与数据安全等关键实战技巧,为深入掌

snake_hand

C++分布式棋牌游戏服务器架构:从网关设计到状态同步实战

分布式系统架构是应对高并发、高可用性需求的核心技术方案,其核心原理在于通过服务拆分与协同,将单体应用解耦为多个可独立扩展的组件。在游戏服务器开发领域,这一技术价值尤为突出,它能有效支撑海量用户同时在线的实时交互场景。本文聚焦于棋牌类游戏的分布式服务端实践,深入剖析了网关层与逻辑层分离的经典架构模式。针对游戏场景中的强状态同步与低延迟要求,文章详细解读了基于自定义二进制协议与Protobuf的通信方案,并探讨了利用Redis实现分布式会话管理与状态同步的关键机制。通过结合网络编程、序列化协议与缓存中间件,为构

weixin_30873847

MQTT2InfluxDB:在:four_o’clock:InfluxDB上记录:mosquito:MQTT消息

MQTT2InfluxDB 订阅一个或多个MQTT主题并在InfluxDB上插入接收到的消息的Python服务,使用Redis DB作为队列在Influx上批量插入消息,并在Influx服务器停机期间保留它们。 要求 Python> = 3.6 列出在上的 MQTT经纪人 InfluxDB服务器 Redis服务器 变更日志 0.0.2-向MQTT添加对身份验证和SSL的支持 0.0.1-初始版本(功能代码) 去做 使用布尔值修复JSON的插入(破坏将数据写入Influx) 处理所有连接器(MQTT,Redis,Influx)上的错误 在读/写队列时向Redis添加锁 仅插入字符串有效载荷,而不插入任意二进制数据 支持MQTT身份验证和SSL 有效载荷调试日志记录更短? 将Redis设置为可选(Redis连接器是带有Python列表以存储消息的模拟类) 支持Redis认证 支持I

实话直说

Delphi 13.1控件之DEVCL2528FS.7z

Delphi 13.1控件之DEVCL2528FS.7z

tjsoft
评论 5
收藏 已收藏
分享
返回顶部
lzd
VC/MFC 16,550 成员 421,606 内容