C的指针,sizeof只能得到指针的长度,无法得到缓冲区的长度。这用起来就不够方便。所以给大家推荐一个结构:
typedef struct
{
//数据存储区。如果不足,先free再malloc。
char* data;
//数据缓冲区的容量,即malloc时的大小。
int capacity;
//数据实际长度,用于memcpy。<=capacity
int size;
} DataBuffer;
C的指针,sizeof只能得到指针的长度,无法得到缓冲区的长度。这用起来就不够方便。所以给大家推荐一个结构:
typedef struct
{
//数据存储区。如果不足,先free再malloc。
char* data;
//数据缓冲区的容量,即malloc时的大小。
int capacity;
//数据实际长度,用于memcpy。<=capacity
int size;
} DataBuffer;