int QueueFull(LinkQueue *Q) { return (Q->rear+1)%QUEUE_SIZE==Q->front; }
int QueueEmpty(LinkQueue *Q) { return (Q->front+1)%QUEUE_SIZE==Q->rear; }
void EnQueue(LinkQueue *Q, int value) { if(QueueFull(Q)) printf("queue is full, your data will be covered!\n"); Q->data[Q->rear] = value; Q->rear = (Q->rear+1)%QUEUE_SIZE; }