title: Value from the pointer is not displaying correctly
body: <p>I try to assign some information to 'char' data (one structure and one integer value), but after i assign it i can't read it back. Any solution? I work on Ubuntu 16.04 installed on virtualbox</p>
  
  <pre><code>struct opcode_struct{
      uint8_t a;
      uint8_t b;
      uint8_t c;
      uint8_t d;
  };
  
  union opcode{
      uint32_t uint32code;
      struct opcode_struct code;
  };
  
  struct request{
      //4
      union opcode opc;
      //4
      uint32_t id;
  };
  
  
  int main()
  {
      char *buff = (char*)malloc(32);
  
      struct request rq = {0x00000001, 0}, *ptr_rq = &amp;rq;
      int val = 512, *ptr_int = &amp;val;
  
      memcpy(buff, ptr_rq, sizeof(rq));
      memcpy((buff+sizeof(rq)), ptr_int, sizeof(int));
  
      printf("Request opcode: 0x%08x\n", *buff);
      printf("Request id: %d\n", *(buff+sizeof(uint32_t)));
      printf("Int value: %d\n", *(buff+sizeof(rq)));
  
      free(buff);
      return 0;
  }
  </code></pre>
  
  <p>Displayed text:
  Request opcode: 0x00000001
  Request id: 0
  Int value: 0</p>
  
  <p>but Int value should be equal to '512'</p>