목차
없음
본문내용
int enqueue(int value)
{
if(endpos+1==maxsize) //endpos가 maxsize에 다달았을때
{
if(startpos==-1) //배열의 첫부분이 차있으면 FULL을 출력한다.
{
printf("Q is Full\n");
return 0;
}
else
{
endpos=endpos-maxsize-1; //endpos가 maxsize에 다달았을때 배열의 첫부분이 비어있으면 endpos를 배열첫부분으로 넘겨주고 값을 반환한다.
endpos++;
Q[endpos]=value;
return value;
}
}
else
{
if(endpos+1==startpos) //endpos가 startpos에 다으면 FULL을 출력한다.
{
printf("Q is Full\n");
return 0;
}
else //endpos뒤에 여유가 있으면 값을 정상적으로 반환한다.
{
endpos++;
Q[endpos]=value;
return value;
}
}
}
{
if(endpos+1==maxsize) //endpos가 maxsize에 다달았을때
{
if(startpos==-1) //배열의 첫부분이 차있으면 FULL을 출력한다.
{
printf("Q is Full\n");
return 0;
}
else
{
endpos=endpos-maxsize-1; //endpos가 maxsize에 다달았을때 배열의 첫부분이 비어있으면 endpos를 배열첫부분으로 넘겨주고 값을 반환한다.
endpos++;
Q[endpos]=value;
return value;
}
}
else
{
if(endpos+1==startpos) //endpos가 startpos에 다으면 FULL을 출력한다.
{
printf("Q is Full\n");
return 0;
}
else //endpos뒤에 여유가 있으면 값을 정상적으로 반환한다.
{
endpos++;
Q[endpos]=value;
return value;
}
}
}
소개글