我正在做一个项目。在 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”。
将变量的类型从 更改int
为long
怎么样?
long h4;
long e = h4;
long[] w = new long[80];
e += 1518500249 + (a << 5 | a >> 27) + (b & c | (b ^ 0xFFFFFFFF) & d) + w[0];
'e' 在哪里声明?它是'int'类型吗?如果是这样,将其更改为“长”并从那里调试
编辑:没关系,我明白了 - 计算结果为“长”。编译器看到并告诉您不能将“long”隐式转换为“int”
使用 'long' 将解决此问题