******** fig3.60 ********** unsigned int succ( unsigned int value, QUEUE Q ) { if( ++value == Q->q_max_size ) value = 0; return value; } void enqueue( element_type x, QUEUE Q ) { if( is_full( Q ) ) error("Full queue"); else { Q->q_size++; Q->q_rear = succ( Q->q_rear, Q ); Q->q_array[ Q->q_rear ] = x; } }