Как записать RGB цвета в массив? - C (СИ)
Формулировка задачи:
Здравствуйте, вот собственно код, нашел на форуме, выводит цвета нормально, но хочу записать эти цвета в массив, желательно в двоичном виде. Для этого используется формула ByteToBinary, но не работает, выводит мне все время разные числа, подскажите пожалуйста в чем проблема
for( i = 0 ; i < bih_l.biHeight; i++) { for ( j = 0; j < bih_l.biWidth; j++) { fread(&rgb_l, sizeof(rgb_l),1, f1); mas = ByteToBinary(rgb_l.rgbtBlue); printf("Blue : %d\n",rgb_l.rgbtBlue); printf("Green : %d\n",rgb_l.rgbtGreen); printf("Red : %d\n",rgb_l.rgbtRed); printf("\n"); } int *ByteToBinary (BYTE val) { int *mass = new int[8]; int t, i; for (t = 128, i = 0; t > 0; t /= 2, i++) { if ((val & t) != 0) mass[i] = 1; else if ((val & t) == 0) mass[i] = 0; } return mass; }
Решение задачи: «Как записать RGB цвета в массив?»
textual
Листинг программы
cout<<mas<<endl;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д