Язык Си в примерах/Калькулятор выражений в обратной польской нотации: различия между версиями

Содержимое удалено Содержимое добавлено
мНет описания правки
Нет описания правки
Строка 161:
В данной программе в некоторой степени реализована «защита от дурака», а именно, если вводится выражение, в котором число операций превосходит число
помещенных в стек элементов (например <tt>1 2 + *</tt>), то программа не допустить уменьшиния переменной <tt>sp</tt> до отрицательных значений, а выдаст предупреждение «Невозможно выполнить POP для пустого стека».</tt>.
 
 
=== Выделение стека в отдельную структуру ===
 
Кроме защиты от дурака-пользователя необходима еще защита от дурака-программиста, который возьмет ваш код, решит его использовать и дорабатывать.
Строка 172 ⟶ 175 :
 
В итоге получаем следующующую, «более правильную» реализацию стека:
 
 
#include <malloc.h>