не только: таблица из структуры из двух элементов, первый - команда от юзера (текст), второй - адрес функции. циклом пробегаемся по таблице сравнивая что же там ввёл юзер и есть ли такое в первом элементе. если совпало - второй элемент - адрес того, что же там вызывать. вызов получается крайне элегантный. разве что в этом случае принимаемые параметры у всех функций должны совпадать. хотя бы по количеству.