Исключение: нарушение доступа для чтения. t было 0x8123
Имеется стек и требуется удалить из него элементы с четными числами. Стек заполняется рандомными числами. При запуске функции удаление происходит исключение.
struct Stack {
int info;
Stack* next;
};
void DelEven(Stack* p) {
Stack* t = p;
Stack* t1 = t;
while (t != NULL) {
if (t->info % 2 != 0) { // исключение тут
t1 = t;
t = t->next;
}
else {
if (t == p) {
p = p->next;
delete t;
}
else {
t1->next = t->next;
delete t;
t = t1->next;
}
}
}
};