Я новичок в C и немного на этом сайте.Нас попросили сбалансировать символы с помощью стеков в C. У меня есть функция push и pop, которая добавляет и удаляет символы для балансировки, соответственно.Всякий раз, когда строка содержит символ {, (, [или <, она помещает одиночный символ в стек. Иначе, он выталкивает его. Если в конце всего процесса стек пуст, это означает, что введенная строка сбалансирована.</p>
if(string[i] == '(' || string[i] == '{' || string[i] == '[' || string[i] == '<')
push(string[i], s);
else
pop(s);
Однако, когда я его просматриваю, терминал печатает цифры вместо нажатых символов. Вот моя функция просмотра:
int i;
for(i = 0; i < (s->tos + 1); i++)
printf("%d ", s->arr[i]);