سؤال

أنا أكتب محلل Datalog لوحدة تحكم روبوت ، وما يأتي من سجل البيانات هو رقم في حدود 0 - 65535 (وهو عدد صحيح 16 بت إذا لم أكن مخطئًا). أحاول تحويل ذلك إلى عدد صحيح موقّع 16 بت لعرضه على المستخدم (لأن هذا كان نوع البيانات الفعلي قبل تغيير المسجل).

هل يستطيع أحد مساعدتي؟

مثال:

ما يجب أن تكون القيم (0 ، -1 ، -2 ، -3 ، -4)

ما هي القيم (0 ، 65535 ، 65534 ، 65533 ، 65532)

هل كانت مفيدة؟

المحلول

هل حاولت صب صريح؟

UInt16 x = 65535;
var y = (Int16)x; // y = -1
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top