在研究一些代码,我遇到了以下结构:在这种情况下char str [1]和char * str之间的区别?
/* PACKET format:
*
* clientRandom - 20 byte buffer
* yLen - 4 bytes (LoHi integer)
* yData - yLen byte buffer
*
* Total length = 24 + yLen bytes
*/
typedef struct packetFormat
{
char clientRandom[20];
uint32 yLen;
char yData[1];
}packetFormat;
为什么第三个字段不声明为自变量长度的字符缓冲区char *yData
?
如何在代码中使用此字段? – someuser
没有可用的代码,它在一个头文件中。 –