difference between static and dynamic data structure in c