How to implement dynamic stack in c