#include #include "Stack.h" struct pcb { int pid; int priority; int number_of_children; }; int main() { struct pcb array[8] = { {0532, 4, 0}, {1945, 5, 0}, {2241, 9, 0}, {3893, 0, 0}, {4523, 1, 0}, {5914, 0, 0}, {6235, 7, 0}, {7521, 5, 0} }; int i; struct Stack s; init( &s, 10 ); push( &s, &( array[3] ) ); push( &s, &( array[7] ) ); push( &s, &( array[4] ) ); push( &s, &( array[2] ) ); push( &s, &( array[6] ) ); for ( i = 0; i < 5; ++i ) { struct pcb *ptr = top( &s ); printf( "PID: %d\n", ptr->pid ); // Alternate form: // printf( "PID: %d\n", ((struct pcb *)top( &s ))->pid ); pop( &s ); } deinit( &s ); return 0; }