//任务:已经完成了一个FIFO 我现在需要多个FIFO 比如一个解析网诺报文 一个printf 怎么做比较好?
//回答:一定要去耦合 所以需要更加抽象 我需要把数据结构和函数封装到一起 做一个整体double!
#include "../FIFO/ringBuff.h"  //技巧:不需要IDE

#define  RINGBUFF_LEN  		1024  
typedef struct
{
    u16 Head;           
    u16 Tail;
    u16 Lenght;
    u8  Ring_Buff[RINGBUFF_LEN];
}RingBuff_t;

typedef struct
{
	RingBuff_t ringBuff;
	void    (*Init)   (FIFO_Type *pFIFO);//可以自己给自己传参吗??
	uint8_t (*write)  (FIFO_Type *pFIFO,uint8_t data);//写一个数据到FIFO
	uint8_t (*readone)(FIFO_Type *pFIFO,uint8_t *data);//读一个数据出来
	uint8_t (*readall)(FIFO_Type *pFIFO,uint8_t **data,u16 *len);//全部读出来
}FIFO_Type;

不可以的!!!说没有定义!!!用void*

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐