Списки. Ошибка "используется потенциально неинициализированная локальная переменная-указатель "t"" - C (СИ)

Узнай цену своей работы

Формулировка задачи:

В 35-й выдает ошибку "используется потенциально неинициализированная локальная переменная-указатель "t"" Цель программы. Используя динамическую структуру список, подсчитать сумму отрицательных чисел в списке.
#define _CRT_SECURE_NO_WARNINGS
 
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <locale.h>
#include <cstdio>
#include <Windows.h>
 
typedef struct  Zv
{
    int mas;
    struct Zv * next; // ссылка на следующий элемент списка
} Zv;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    Zv * P; // первый элемент списка
    Zv * Z;//
    Zv * t; //последний элемент списка
    int sym;
 
    printf("Введите строку целых чисел, закончив её нулём\n");
    P = NULL;
    do
    {
        scanf("%d", &sym);
        Z = (Zv *)malloc(sizeof(Zv));
        Z->mas = sym;      /* Присваивается значение информационному полю нового элемента*/
        Z->next = 0;
        if (P != 0)
        {  // Если очередь не пуста, очередной элемент добавляется в конец очереди 
            t->next = Z;
            t = Z;
 
        }
        else
        {
            /*  Если очередь пуста,  начало и конец очереди будут указывать на один и тот же элемент  */
            P = Z;
            t = Z;
        }
    } while (sym != 0);

    printf("Начальный\tКонечный\n");
    while (P != 0)
    {
        printf("%d      \t", t->mas);
        if (P->mas <0) { P->mas = 0; printf("%d      \n", P->mas); }
        else printf("%d      \n", P->mas);
        P = P->next;
    }
 
    system("pause");
    return 0;
 
}

Решение задачи: «Списки. Ошибка "используется потенциально неинициализированная локальная переменная-указатель "t""»

textual
Листинг программы
list_node* ret = (list_node*)malloc(sizeof(list_node));

Оцени полезность:

5   голосов , оценка 4.4 из 5
Похожие ответы