易截截图软件、单文件、免安装、纯绿色、仅160KB

delphi 与 C# 位运算 有好大区别,请教各位!

delphi 函数:

function RB(A: longint): longint;
begin
  Result := (A shr 24) or ((A shr 8) and $FF00) or ((A shl 8) and $FF0000) or (A shl 24);
end;


我转成C#:

        private int RB(int A) {
            return (A >> 24) | ((A >> 8) & 0xFF00) | ((A < < 8) & 0xFF0000) | (A < < 24);
        }

结果很奇怪:
我的A值为:-2143996893

delphi 的结果是: 590624128
c#:-128

请各位帮尽快分析一下我是否转错了,谢谢~!
溢出了?

引用
溢出了?


但 delphi 的结果是没有溢出的啊?

delphi是longint,你找找c#的对应类型

引用
delphi是longint,你找找c#的对应类型


longint 就是 integer,对应 C# int 这个应该没有错。

查过好像是一样,那就不清楚了


引用
在 x86 平台中,c 类语言的右移是跟整数变量的类型是否有符号有关
而 pascal 语言不支持带符号右移的语法,也就是说,delphi 的右移只相当于 c 类语言中无符号整数的右移



非常感谢!


相关问答:

如何用c#,sql2000 开发c/s下的工作流?

本人c#新手 可是要求要用c# ,sql2000开发c/s的工作流,一头雾水,请大家帮忙帮忙,给点思路,说的约具体越好,我也好往那个方面去学习
http://www.hxzi.com/view/61402.html
B/S版的,基本思想应该差不多的。。 ......

C#asp.net生成 Excel的问题

网上看了很多,好像这样调用很好:Excel.Application();
但是需要引入什么命名空间或者dll才能运行Excel这个类呢?

Excel.dll

Excel.dll在Excel安装程序下,
using Microsoft.Office.Interop.Excel;
......

C#如何判断连接sql server数据库成功?

C#如何判断连接sql server数据库成功?
try
{
connection.connect()
return true;
}
catch()
{
return false;
}

楼主很着急,开了几贴了。

引用
try
{
connection.connect( ......

Python中的Unicode在Delphi如何还原成Gb2312?

已知Python 中:
s = unicode("测试", "gb2312")
s = u'\u6d4b\u8bd5'
print s
测试

在Delphi里面如何将\u6d4b\u8bd5这样的还原成Gb2312的汉字呢?
找到个方法
......

急!Delphi中显示c#的vs2008写的控件

我想将c#写的控件嵌到Delphi7的Form中显示,但是始终是没坐成,我通过导入tlb文件,可以通过c#写的接口,实现在Delphi中显示一个窗体,但是显示的只是在桌面上浮动的窗体,无法将他的父容器指定为Delphi的Form,我想 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号