ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
4 мая
836521 Топик полностью
Вова (30.04.2018 17:53 - 21:21, просмотров: 97) ответил rual на это структура, потому через (void*) преобразование.
Зачем же так извращаться? Специально придумали оператор typedef - пользуйтесь им //Такой код вроде бы должен работать если ваш компилятор не оптимизирует структуру typedef uint8_t* bytes; struct buffer { char A; char B; }; buffer rx_buffer; //заглушка crc16. А у вас передается значение или ссылка? //word - короткий беззнаковый int word crc16(byte X) { return X; } //где-то в коде main() { word data16 = 0; rx_buffer.A = 2; //что-то присваиваем rx_buffer.B = 4; // bytes ptrbuf = bytes(&rx_buffer);//ваше описание более менее человеческим языком byte M = sizeof(rx_buffer); //не знаю не захочет ли ваш компилятор //считать длину структуры каждый раз в цикле for (uint8_t i = 0; i < M; i++) { data16 ^= crc16(ptrbuf[i]); //передаем значение! } }