title: C error: lvalue required as unary '&' operand
body: <p>I have a code error but not sure what's wrong with my casting and reference.</p>
  
  <pre><code>BOOL xMBPortSerialPutByte( CHAR ucByte )
  {
      CDC_Send_DATA(&amp;((unsigned char)ucByte), 1);   // code error here
      xMBPortEventPost(EV_FRAME_SENT);
      return TRUE;
  }
  </code></pre>
  
  <p>The CDC_Send_DATA is defined as the following: </p>
  
  <pre><code>uint32_t CDC_Send_DATA (uint8_t *ptrBuffer, uint8_t Send_length);
  </code></pre>
  
  <p>Here is the error message:</p>
  
  <pre><code>  port/portserial.c:139:19: error: lvalue required as unary '&amp;' operand
  </code></pre>
  
  <p>Hope someone could help. Thanks!</p>