我正在加密用户的输入以生成密码字符串.但是一行代码在不同版本的框架中给出了不同的结果.用户按下的键值的部分代码:
按下键:1.变量ascii
为49.经过一些计算后,'e'和'n'的值:
e = 103,
n = 143,
Math.Pow(ascii, e) % n
Run Code Online (Sandbox Code Playgroud)
上述代码的结果:
在.NET 3.5(C#)中
Math.Pow(ascii, e) % n
Run Code Online (Sandbox Code Playgroud)
给9.0
.
在.NET 4(C#)中
Math.Pow(ascii, e) % n
Run Code Online (Sandbox Code Playgroud)
给77.0
.
Math.Pow()
在两个版本中给出正确(相同)的结果.
原因是什么,是否有解决方案?