Кравцев Вадим З214
7 unresolved threads
- Resolved by Vadim Kravcev
- Last updated by Vadim Kravcev
1 #include "bmp.h" 2 #include "image.h" 3 #include "image_io.h" 4 5 #include <stdio.h> 6 #include <stdlib.h> 7 8 enum read_status from_bmp(FILE *in, struct bmp_header *bmp_header, struct image **img) { А зачем изменять указатель, если можно изменять саму структуру?) И вы внутри функции везде разыменовываете двойной указатель, превращая его в одинарный... Меня просто смутило, потому что двойные указатели привычно видеть при проходе массивов. В общем, если хотите, можете оставить как архитектурную особенность, я все таки не преподаватель :)
Edited by Kseniya Slonimskayachanged this line in version 15 of the diff
- Last updated by Vadim Kravcev
- Last updated by Vadim Kravcev
13 uint32_t bfileSize; 14 uint32_t bfReserved; 15 uint32_t bfOffBits; 16 uint32_t biSize; 17 uint32_t biWidth; 18 uint32_t biHeight; 19 uint16_t biPlanes; 20 uint16_t biBitCount; 21 uint32_t biCompression; 22 uint32_t biSizeImage; 23 uint32_t biXPelsPerMeter; 24 uint32_t biYPelsPerMeter; 25 uint32_t biClrUsed; 26 uint32_t biClrImportant; 27 }; 28 #pragma pack(pop) changed this line in version 12 of the diff
6 struct bmp_header *header = malloc(sizeof(struct bmp_header)); 7 if (!header) { 8 return NULL; 9 } 10 11 *header = (struct bmp_header){ 12 .bfType = HEADER_TYPE, 13 .bfReserved = 0, 14 .bfOffBits = sizeof(struct bmp_header), 15 .biSize = HEADER_SIZE, 16 .biWidth = image.width, 17 .biHeight = image.height, 18 .biPlanes = 1, 19 .biBitCount = 24, 20 .biCompression = 0, 21 .biSizeImage = image.width * image.height * sizeof(struct pixel), @Vadik, посмотри, пожалуйста
@AlexanderIlin @krevetkot @andrew Все исправил!
@andrew, все правки приняты