Списки. Ошибка "используется потенциально неинициализированная локальная переменная-указатель "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));