English 中文(简体)
C#:对 by进行负面分类的结果
原标题:C#: The result of casting a negative integer to a byte
  • 时间:2012-05-13 20:05:14
  •  标签:
  • c#
最佳回答
问题回答

这里是一种计算法,其逻辑与推算法相同,有助于你理解:

积极方面:

byte bNum = iNum % 256;

负数:

byte bNum = 256 + (iNum % 256);

It s like searching for any k which causes x + 255k to be in the range 0 ... 255. There could only be one k which produces a result with that range, and the result will be the result of casting to byte.

另一种研究方式是“围绕星面值范围进行循环”:

Lets use the iNum = -712 again, and define a bNum = 0.

我们将遵守<条码>。 Num++; bNum-; untill iNum = 0:

iNum = -712;
bNum = 0;

iNum++; // -711
bNum--; // 255 (cycles to the maximum value)

iNum++; // -710
bNum--; // 254

... // And so on, as if the iNum value is being *consumed* within the byte value range cycle.

当然,这只是一个例子,说明它如何在逻辑上发挥作用。





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

NSArray s, Primitive types and Boxing Oh My!

I m pretty new to the Objective-C world and I have a long history with .net/C# so naturally I m inclined to use my C# wits. Now here s the question: I feel really inclined to create some type of ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

How to Use Ghostscript DLL to convert PDF to PDF/A

How to user GhostScript DLL to convert PDF to PDF/A. I know I kind of have to call the exported function of gsdll32.dll whose name is gsapi_init_with_args, but how do i pass the right arguments? BTW, ...

Linqy no matchy

Maybe it s something I m doing wrong. I m just learning Linq because I m bored. And so far so good. I made a little program and it basically just outputs all matches (foreach) into a label control. ...

热门标签