Opened 5 years ago
Closed 4 years ago
#397 closed ожидается проверка (задача сдана)
# WW 5
Reported by: | zhemchuzhina.elizaveta | Owned by: | Дмитрий Свиридкин |
---|---|---|---|
Component: | WW_c_io | Version: | 3.0 |
Keywords: | Cc: |
Description
Change History (5)
comment:1 Changed 5 years ago by
Owner: | changed from Дмитрий Свиридкин to zhemchuzhina.elizaveta |
---|---|
Type: | ожидается проверка → ожидаются исправления |
comment:2 Changed 4 years ago by
Owner: | changed from zhemchuzhina.elizaveta to Дмитрий Свиридкин |
---|---|
Type: | ожидаются исправления → ожидается проверка |
Version: | 1.0 → 2.0 |
comment:3 Changed 4 years ago by
Owner: | changed from Дмитрий Свиридкин to zhemchuzhina.elizaveta |
---|---|
Type: | ожидается проверка → ожидаются исправления |
0.
src/main.c:27:23: warning: implicit declaration of function ‘get_point’; did you mean ‘add_point’? [-Wimplicit-function-declaration]
point_node *p_node = get_point(node);
У вас сразу должно было все упасть из-за UB с невалидными указателями.
1.
Преобразование считанных чисел из бинарного файла некорректное. char часто бывает знаковым.
- количество аргументов, переданных в программу по-хорошему надо проверять.
- Используйте типы с фиксированным размером при работе с бинарными данными (uint8_t, int32_t и т.д.)
- Перепутан порядок байт.
4/10
comment:4 Changed 4 years ago by
Owner: | changed from zhemchuzhina.elizaveta to Дмитрий Свиридкин |
---|---|
Type: | ожидаются исправления → ожидается проверка |
Version: | 2.0 → 3.0 |
Знаковый char на доп. баллы.
comment:5 Changed 4 years ago by
Resolution: | → задача сдана |
---|---|
Status: | assigned → closed |
Знаковый char не про доп. баллы: Если в файле будут байты [255 255 0], char, в который вы читаете, станет отрицательным. int, в который сохраняете, станет отрицательным, а после сдвига произойдет UB.
Собственно, числа, у которых хоть один байт больше 127, у вас чистаются неверно.
7.5
src/point_list.c:66:14: warning: passing argument 2 of ‘apply’ from incompatible pointer type [-Wincompatible-pointer-types]
Вот так делать нельзя. Даже если собирается. Кастить указатели на функции с разными сигнатурами -- прямой путь к UB
Течет память
count?
3/10