il-2 (05.05.2019 08:04, просмотров: 176) ответил VLLV на А вот объясните плз, почему берется не адрес константы, а сама константа. ИАР, есличё.
Если рассудить логически и объединить 2 приведенных тобой вызова, то вот такой код должен работать правильно:
return CRC( (uint8_t*) &my_const , 4); // в функцию передается константа, а не ее адрес
uint32_t tmp = my_const;
return CRC( (uint8_t*) &tmp , 4); // тут все правильно
// Скрещиваем:
return CRC( (uint8_t*) &((uint32_t)my_const) , 4); // Должно получиться правильно !!!