Невозможно преобразовать 4 байтовых переменных в одну из восьми байтов? Банальное приведение типов, которое даже до ооп учат.
Float - 4 байта, но не суть.
Я имел в виду то что нельзя сделать просто так туда записать это всё. Придется делать подобный каст:
float color = 0.f;
*((uint32_t*)&color) = 0xFFFFFF;
Учитывая что color это float, а мы туда какой-то инт записываем, да и еще указатель берём, для людей которые пишут на каком нибудь питоне, выглядит как полный бред.
Приведение типов, может и банальное, но довольно трудное для понимания на таком уровне изучения (до ООП).
Лично я смотрел много лекций по плюсам, и только спустя какое-то время полностью понял как это всё хранится в памяти, и как с этим работать.
Да, безусловно, цвет можно записать в любой регион выделенной памяти в 4 байта.
О боже, хоть один человек который хоть что-то знает.