Próbowałem replikować this, ale nie skompilowałem.C++ cast unsigned to signed
unsigned char x = 0;
reinterpret_cast<signed char>(x);
Mówi
C:\Users\SXG5558\Documents\Arduino\sketch_jun30a\sketch_jun30a.ino: In function 'void setup()':
sketch_jun30a:3: error: invalid cast from type 'unsigned char' to type 'signed char'
reinterpret_cast<signed char>(x);
^
exit status 1
EDIT:
Żeby było jasne, ja naprawdę chcę reinterpretacji bity w pamięci od podpisał unsigned. Piszę bibliotekę I2C, która odczytuje i zapisuje niepodpisane dane, ale używam tej biblioteki do kontrolowania czujników, które są podpisane, więc chcę ponownie zinterpretować rzucenie rzeczywistych danych.
przykład, który łączysz, ma postać 'reinterpret_cast(x);'. Zauważ, że '&' –
user463035818
Czy tytuł pytania nie wymaga po prostu przeciwnego kierunku rzucania, jak pokazano w twoim kodzie? –
po prostu użyj nuke-it '(signed char) x' cast. – pm100