Domanda

Sto scrivendo un parser Datalog per un controller del robot, e ciò che è arrivato da registro dati è un numero nella gamma di 0 - 65535 (che è a 16 bit numero intero senza segno, se non mi sbaglio). Sto cercando di convertire in un numero intero a 16 bit con segno alla visualizzazione per l'utente (dato che era il tipo di dati reale prima il registratore cambiato).

Qualcuno può darmi una mano?

Esempio:

Quello che i valori devono essere (0, -1, -2, -3, -4)

Quali sono i valori (0, 65535, 65534, 65533, 65532)

È stato utile?

Soluzione

Hai provato cast esplicito?

UInt16 x = 65535;
var y = (Int16)x; // y = -1
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top