Change History (4)

comment:1 Changed 5 years ago by Дмитрий Свиридкин

Owner: changed from Дмитрий Свиридкин to Карнаухов Кирилл
Type: ожидается проверкаожидаются исправления

Тесты проходят, но с одним нюансом:

$ printf "exit" | lab_03/lab3

И программа зациклилась :)

1.

remove_all_points(&empt->node);
free(empt);

Надо бы завернуть в один вызов, чтобы одинокий free не висел на глазах. Если модуль предоставляет средство для создание списка, значит, должен предоставлять средство для его удаления.
Аналогично, создание "пустого" списка стоит оформить отдельной функцией без параметров вместо просто вызова new_point с какими-то "неизвестными" параметрами.

2.
#define true 1
Подключите stdbool.h и не мучайтесь :)

  1. Макросы традиционно пишут капсом. Чтоб не путать с функциями и кричать, что это аская штука, от нее надо держаться подальше. Почему в описании лабораторной они не капсом -- досадное недоразумение.

comment:2 Changed 5 years ago by Карнаухов Кирилл

Owner: changed from Карнаухов Кирилл to Дмитрий Свиридкин
Type: ожидаются исправленияожидается проверка
Version: 1.02.0

Если я Вас правильно понял, то не работает просто написать "exit" в консоль. Однако у меня все прекрасно работает и программа завершается, и я не понимаю, в чем может быть проблема :(

comment:3 Changed 5 years ago by Дмитрий Свиридкин

Пишем в консоли (не в stdin программы, а просто в терминале): printf "exit" | bin/lab3

Посмотрите, в чем разница, если сделать в терминале printf "exit" и echo "exit"

У вас верное решение, которое начинает вести себя странно, если подать входные данные, не совсем удовлетворяющие описанной в условии спецификации.

comment:4 Changed 5 years ago by Дмитрий Свиридкин

Resolution: задача сдана
Status: assignedclosed
Note: See TracTickets for help on using tickets.