1

我正在做一个项目。在 C# 中转换 java 代码。如何在 C# 中转换以下 java 代码。

int h4; 
int e = h4;    
int[] w = new int[80]; 

e += 1518500249 + (a << 5 | a >> 27) + (b & c | (b^ 0xFFFFFFFF) & d) + w[0];

在第 4 行显示编译器错误“无法隐式地将类型 long 转换为 int”。

4

2 回答 2

1

将变量的类型从 更改intlong怎么样?

long h4;
long e = h4;    
long[] w = new long[80]; 

e += 1518500249 + (a << 5 | a >> 27) + (b & c | (b ^ 0xFFFFFFFF) & d) + w[0];
于 2013-02-18T12:23:29.173 回答
0

'e' 在哪里声明?它是'int'类型吗?如果是这样,将其更改为“长”并从那里调试

编辑:没关系,我明白了 - 计算结果为“长”。编译器看到并告诉您不能将“long”隐式转换为“int”

使用 'long' 将解决此问题

于 2013-02-18T12:23:11.133 回答