Run time polymorhism in C