Opened 3 years ago

Closed 3 years ago

#252 closed ожидается проверка (задача сдана)

HW #1

Reported by: Georgiy Angeni Owned by: Святослав Власов
Component: HW #1 (BMP) Version: 3.0
Keywords: Cc:

Description


Change History (6)

comment:1 Changed 3 years ago by Святослав Власов

Type: ожидается проверкаожидаются исправления

Корректность -- 20/20
Тесты с первого раза все прошли, молодец. Можешь делать бонус.

Стиль -- 8/10

  1. Зачем null_buffer выделять на куче? Он маленький и фиксированного размера -- прекрасно будет себя чувствовать на стеке.
  2. Лучше memset:
        for (size_t i = 0; i < 4; i++)
            null_buffer[i] = 0;
    
  3. В init_pixel_array утекут ресурсы, если вдруг первая аллокация пройдет успешно, а вторая нет. Если ты внутри функции решил не падать на ассерте, а возвращать NULL или какую-то ошибку в случае если что-то пошло не так, то твоя функция должна освободить все ресурсы, которые она успела выделить.

comment:2 Changed 3 years ago by Georgiy Angeni

Type: ожидаются исправленияожидается проверка
Version: 1.02.0

comment:3 Changed 3 years ago by Святослав Власов

Type: ожидается проверкаожидаются исправления

Стиль 9/10, первое и второе замечание не пофикшены.

comment:4 Changed 3 years ago by Святослав Власов

Насчет бонуса -- расшифровывается некорректно, какой-то левый символ дописывается в конце сообщения и перевод строки не добавляется.
5/10

comment:5 Changed 3 years ago by Georgiy Angeni

Type: ожидаются исправленияожидается проверка
Version: 2.03.0

comment:6 Changed 3 years ago by Святослав Власов

Resolution: задача сдана
Status: assignedclosed

Всё хорошо, только зачем null_buffer делать указателем на указатель?
Когда ты пишешь char null_buffer[4] -- это буфер на стеке размера 4 байта и у переменной null_buffer тип char*, а когда ты написал char* null_buffer, то это буфер из четырех указателей на char, размер у него 4*sizeof(char*), а переменная null_buffer имеет типа char**.

Бонус работает
40/40

Note: See TracTickets for help on using tickets.