__attribute__((packed,aligned(1)))

发布时间 2023-12-30 03:08:15作者: lydstory
#include <iostream>
#include <string>
using namespace std;

#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
#include <stdint.h>

#ifdef WIN32
#pragma pack (push,1)
#define UDXSTREAMPACKED 
#else
#define UDXSTREAMPACKED __attribute__((packed,aligned(1)))
#endif

typedef uint8_t  u8;
typedef uint32_t u32;
typedef uint16_t u16;

typedef struct UDXSTREAMPACKED CSHead
{
   uint32_t token;
   uint16_t type;
   uint32_t room;
   uint32_t user;
}CSHead;

typedef struct UDXSTREAMPACKED C2SCmdHead
{
   CSHead head;
   uint32_t sn;
}C2SCmdHead;

typedef struct UDXSTREAMPACKED CSDataHead
{
  C2SCmdHead head;
  u8 frame;
  u32 sn;
}CSDataHead;

int main()
{
  cout << "hello,world" << endl;
  cout << "ni hao " <<endl;
  
  return 0;
}