That’s because this is larger than the largest positiveInt16. If you want to “wrap it around” to a negative Int16 value with those bytes via 2’s complement, do:
There’s nothing special or different about Cshort. The only reason you’d ever want to use it is for interop with a C program that uses the definition of short. Otherwise, it’s much better to simply use Int16 directly as folks here are assuming because it seems you know that it’s two bytes (or four hex digits).
Why “F1CF” is larger than largest positiveInt16 (32767). Is it by convention. Can you please explain. There are total 2^16 different values possible with Int16. Of which many are causing overflow error. How can I find out which possible values are causing overflow error.