Мне нужна функция, которая принимает четыре беззнаковых переменных в качестве параметров и объединяет их в беззнаковое целое. Первая переменная char является первым байтом int, второй char является вторым байтом и так далее. Вот то, что я имею до сих пор, это не работает должным образом, и я не могу понять, почему после того, как возиться с ним и гуглить в течение нескольких часов.
uint32_t combineChar(unsigned char one, unsigned char two, unsigned char three, unsigned char four){
uint32_t com;
com = (uint32_t)one;
com = com << 8 | (uint32_t)two;
com = com << 8 | (uint32_t)three;
com = com << 8 | (uint32_t)four;
return com;
}