环境
#define BUF_SIZE 1024 //buffer的大小
typedef struct
{
unsigned char data[BUF_SIZE];
unsigned int wrPos;
unsigned int rdPos;
} ring_buffer;
unsigned char txData[100];
// 现在 ring_buffer 状态
ring_buffer buffer;
buffer.wrPos = 100;
buffer.rdPos = 50;
// buffer.data 里有100个数据
unsigned int len = 50;
方式一:
memcpy(txData, &buffer.data[buffer.rdPos], len);
方式二:
memcpy(txData, buffer.data + buffer.rdPos, len);