title: Separate byte in groups
body: <p>So Im using this (its from another question I did),</p>
  
  <pre><code>unsigned char *y = resultado-&gt;informacion; 
  int i = 0;
  int tam = data-&gt;tamanho;
  unsigned char resAfter; 
  for (int i=0; i&lt;tam;i++)
  {
      unsigned char x = data-&gt;informacion[i];
      x &lt;&lt;= 3;
      if (i&gt;0)
      {
          resAfter = (resAfter &lt;&lt; 5) | x;
      }
      else
      {
          resAfter = x;
      }
  }
  
  printf("resAfter es  %s\n", resAfter);
  </code></pre>
  
  <p>so at the end I have this really long number (Im estimating about 43 bits), how can I get groups of 8 bits, I think im gettin something like (010101010101010.....000) and I want to separate this in groups of 8. </p>
  
  <p>Another question, I know for sure that resAfter is going to have  n number of bits where n is a multiply of 8 plus 3, so my question is: is this possible? or c is going to complete the byte? like if I get 43 bits then c is going to fill them with 0 and complete so I have 48 bits; and is there a way to delete these 3 bits?  </p>
  
  <p>Im new on c and bitwise so sorry if what Im doing is reallly bad.</p>