// FIFO.cpp : 定義主控台應用程式的進入點。
//
#include "stdafx.h"
typedef struct
{
int pr;
int pw;
int buffer[256];
}QUEUE;
QUEUE Queue;
void Queue_Init()
{
Queue.pr = 0;
Queue.pw = 0
memset(Queue.buffer,0,sizeof(int)*256);
}
bool Queue_Is_Empty()
{
if(Queue.pr ==Queue.pw)
return true;
return false;
}
bool Queue_Is_Full()
{
if((Queue.pw+1)%256==Queue.pr)
return true;
return false;
}
bool Queue_Get(int *data)
{
if(Queue_Is_Empty())
return false;
*data = Queue.buffer[Queue.pr];
Queue.pr++;
Queue.pr%=256;
return true;
}
bool Queue_Put(int data)
{
if(Queue_Is_Full())
return false;
Queue.buffer[Queue.pw];
Queue.pw++;
Queue.pw%=256;
return true;
}
int _tmain(int argc, _TCHAR* argv[])
{
int get_data;
Queue_Init();
Queue_Put(26);
Queue_Get(&get_data);
return 0;
}
留言列表