В C ++, без использования ООП, вы использовали бы пространства имен.
В C люди склонны создавать функции с префиксами (например, «sqlite3_some_function_name») и / или отмечать непубличные функции static
.
В любом случае, при использовании длинных и описательных имен для функций никакие две функции не будут иметь одинаковое имя ИЛИ , если они есть, они идентичны, и одну из них можно удалить.