Исключение: нарушение доступа для чтения. 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;
            }
        }
    }
};

Ответы (0 шт):