#include<iostream>
using namespace std;
typedef struct SqQueue{int *base;//动态生成数组int front;//头“指针” int rear; //尾“指针” }sqQueue;
int initial(int quequesize,SqQueue &s){s.base = new int[quequesize];s.rear = 0;s.front = 0;return 1;
}
int length(SqQueue s,int quequesize){return (s.rear-s.front+quequesize)%quequesize;
}
int EnQueue(SqQueue &s,int x,int quequesize){if((s.rear+1)%quequesize == s.front)return -1;s.base[s.rear] = x;s.rear = (s.rear+1)%quequesize;return 1;
}
int DeQueue(SqQueue &s,int &e,int quequesize){if(s.front == s.rear)return -1;e = s.base[s.front];s.front = (s.front+1)%quequesize;return 1;}
int main(){SqQueue s;initial(5,s);for(int i =0;i<4;i++){EnQueue(s,i,5); }int x;DeQueue(s,x,5);while(s.front-s.rear!=0){cout<<s.base[s.front];s.front++;}return 1;
}