I tried to port the vector container from C++ STL to C. Its just a header file called spv.h and almost all features of C++ vectors can now be used in C just by including it. SPV arrays support resize, insert, remove, push_back, push_front, pop_back, pop_front, sort , swap, etc.
For more information visit the project page at http://sohanchy.github.io/SPV-for-C/