public void ByteOffsetVoidPtr() { if (Is64Bit) { Assert.Equal(IntPtr.Zero, UnsafeUnmanaged.ByteOffset(MakePtr(0xFFFFFFFFU), MakePtr(0xFFFFFFFFU))); Assert.Equal(new IntPtr(0x100000000L), UnsafeUnmanaged.ByteOffset(MakePtr(0xFFFFFFFFU), MakePtr(0x1FFFFFFFFL))); } Assert.Equal(IntPtr.Zero, UnsafeUnmanaged.ByteOffset(MakePtr(0xFFFFFFFU), MakePtr(0xFFFFFFFU))); Assert.Equal(new IntPtr(0x10000000), UnsafeUnmanaged.ByteOffset(MakePtr(0xFFFFFFF), MakePtr(0x1FFFFFFFU))); }
public void ByteOffset() { Assert.Equal(new IntPtr(0x10010), UnsafeUnmanaged.ByteOffset(MakePtr <double>(0xFFE0), MakePtr <double>(0x1FFF0))); Assert.Equal(new IntPtr(-0x10000 + 16), UnsafeUnmanaged.ByteOffset(MakePtr <double>(0x1FFE0), MakePtr <double>(0xFFF0))); }