各位大佬帮我看看这个怎么不能运行呀
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct Queue{
int*Data;
int Front;
int Rear;
int Size;
int Maxsize;
};
struct Queue*CreateQueue(int Maxsize)
{
struct Queue*Q;
Q=(struct Queue*)malloc(sizeof(struct Queue));
Q->Data=(int*)malloc(sizeof(int)*Maxsize);
Q->Front=Q->Rear=0;
Q->Size=0;
Q->Maxsize=Maxsize;
return Q;
}
void EnQueue(struct Queue*Q,int x)//入队
{
if(Q->Size==Q->Maxsize)
{
printf("Queue is full.\n");
return;
}
Q->Data[Q->Rear++]=x;
if(Q->Rear==Q->Maxsize)
{
Q->Rear=0;
}
}
int DeQueue(struct Queue*Q)//出队
{
int tmp;
if(Q->Size==0)
{
printf("Queue is Empty.\n");
return 0;
}
tmp=Q->Data[Q->Front++];//从头部出队
if(Q->Front==Q->Maxsize)
{
Q->Front=0;
return tmp;
}
}
int printQueue(struct Queue*Q)
{
int i=0;
for(i=Q->Front++;i<=Q->Rear;i++)
printf("%d",Q->Data[i]);
}