can c overload functions?