结构体怎么组包发送

1. 在搞TCP的时候,经常需要按照协议组包。大部分数据之前都是结构体形式的,那么怎么用TCP发送出去

typedef struct 
{
    char pack_head[2];
    short len;
    short cmd_num;
    unsigned char index;
    unsigned char flags[2];
    unsigned char mqtt_connect_status;
    unsigned char csq;
    unsigned char tcp_sota_status;
    unsigned char udp_log_status;
    unsigned char checksum;

}nt35_to_mcu_data_buf_t;

按照理论说,只要地址空间是连续的,就有可以直接发送,强制类型转换

直接转换成字符串指针,然后发送

nt35_to_mcu_data_buf_t temp_buf = {{0xff,0xff},12,0x42,0,{0,0},0,0,0,0,0};
tcp_send((char*)&temp_buf);

 

posted @ 2021-06-08 18:07  429512065  阅读(167)  评论(0编辑  收藏  举报