Как и с Рутисхаузером представляю вам реализацию второго алгоритма обработки строковых выражений по хронологии методички.
Для изучения и тестирования. Сам я полноценные тесты не проводил, так что, те, кто найдет краш-тест, получат плюсик от меня.
Ещё интересный вопрос к тем, кто шарит в Си. Стек состоит из структур Item, и, когда мы пушим элемент через (Item){field1, filed2, ...}, всё почему-то ломается. Есть предположение, что это как-то связано с полем union, но мне интересно почитать и ваши мысли.
P.S. Если полетели комментарии - откройте файл через блокнот.