c++ Convert struct to bytes
D:\stock\Tskingfromgoogle\src\NetTS\TW.cpp
Convert struct to bytes
//Convert struct to bytes 2019/05/20 by freeman
int ConstructLoginBuffer(BYTE* buffer, size_t maxlen, LPCTSTR lpszUser, LPCTSTR lpszPasswd)
{
int nLen = 0;
int nLenUser = strlen(lpszUser);
int nLenPasswd = strlen(lpszPasswd); TW_LOGIN packet;
memset(&packet,0,sizeof(packet));
packet.m_header.m_magic = TW_MAGIC;
if(maxlen < (int)(5 + sizeof(TW_HEADER) + nLenUser + nLenPasswd))
{
nLen = 5 + sizeof(TW_HEADER);
return -1;
}
packet.m_name_len = (WORD)nLenUser;
memcpy(packet.m_data, lpszUser, nLenUser);
*(WORD*)(packet.m_data + nLenUser) = (WORD)nLenPasswd;
memcpy(packet.m_data + nLenUser + sizeof(WORD), lpszPasswd, nLenPasswd); nLen = 5 + sizeof(TW_HEADER) + nLenUser + nLenPasswd;
ConstructLength(packet.m_header, nLen - sizeof(packet.m_header)); if(buffer)
memcpy(buffer, &packet, nLen);
return nLen;
}
c++ Convert struct to bytes的更多相关文章
- Go语言高级特性总结——Struct、Map与JSON之间的转化
Struct与Map之间互相转换 // Struct2Map convert struct to map func Struct2Map(st interface{}) map[string]inte ...
- go语言之行--结构体(struct)详解、链表
一.struct简介 go语言中没有像类的概念,但是可以通过结构体struct实现oop(面向对象编程).struct的成员(也叫属性或字段)可以是任何类型,如普通类型.复合类型.函数.map.int ...
- Interpret bytes as packed binary data
7.1. struct — Interpret bytes as packed binary data — Python 3.6.5 documentation https://docs.python ...
- java 各基本类型转 bytes 数组
java 将 基本类型转byte[] 数组时,需考虑大端小端问题 1. 大端格式下,基本类型与byte[]互转 BigByteUtil.java package com.ysq.util; impor ...
- Python模块struct(二进制数据服务)
struct模块 Python没有专门处理字节的数据类型.但由于b'str'可以表示字节,所以,字节数组=二进制str. 而在C语言中,我们可以很方便地用struct.union来处理字节,以及字节和 ...
- json-smart 使用示例(推荐fastjson)
关于json库,请使用fastjson,这是我用过的最好用的json库! 地址:https://github.com/alibaba/fastjson ======================== ...
- net programming guid
Beej's Guide to Network Programming Using Internet Sockets Brian "Beej Jorgensen" Hallbeej ...
- json-smart 使用示例
json-smart 使用示例 json是一种通用的数据格式.相比与protocal buffer.thrift等数据格式,json具有可读性强(文本).天生具备良好的扩展性(随意增减字段)等优良特点 ...
- table2excel使用
原table2excel代码 /* * 采用jquery模板插件——jQuery Boilerplate * * Made by QuJun * 2017/01/10 */ //table2excel ...
随机推荐
- ASP.NET大文件上传断点续传解决方案
HTML部分 <%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="index.aspx. ...
- 信息提示框:MessageBox
一 函数原型及参数 function MessageBox(hWnd: HWND; Text, Caption: PChar; Type: Word): Integer; 1.参数列表 hW ...
- #5 DIV2 A POJ 3321 Apple Tree 摘苹果 构建线段树
Apple Tree Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 25232 Accepted: 7503 Descr ...
- 详解one-hot编码
博主原创文章,转载请注明出处 https://www.cnblogs.com/shuaishuaidefeizhu/p/11269257.html 一.什么是one-hot编码? One-Hot编码, ...
- C++入门经典-例2.13-左移运算
1:代码如下: // 2.13.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> using ...
- jpa hibernate mybatis
jpa: entityManagerFactory: org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean hibern ...
- 链表栈C语言实现
#ifndef LINKSTACK_H_INCLUDED #define LINKSTACK_H_INCLUDED #include <stdlib.h> #include <std ...
- leetcode 75颜色分类
两趟扫描,由于排序变量的特殊性,使用计数排序方法可以明显降低至O(n)time O(n) space 关于计数排序:https://mp.weixin.qq.com/s/WGqndkwLlzyVOHO ...
- java删除文件夹或者文件
private static void deleteFile(File file) { if (file.exists()) { // 判断文件是否存在 if (file.isFile()) { // ...
- [Flask]通过render_form快捷渲染表单
依赖: Bootstrap-Flask 实例化方式与flask_bootstrap相同. 关于render_form(): Bootstrap-Flask内置了两个用于渲染WTForms表单类的宏,r ...