gpt4 book ai didi

vb.net - VB.NET 中的除法

转载 作者:行者123 更新时间:2023-12-03 15:15:30 26 4
gpt4 key购买 nike

/ 和有什么区别和 \用于 VB.NET 中的除法?

根据我使用的代码,我的代码给出了非常不同的答案。我以前都见过,但我从来不知道有什么区别。

最佳答案

有两种除数的方法。快的方式和慢的方式。许多编译器试图诱使您以快速的方式执行此操作。 C# 就是其中之一,试试这个:

using System;

class Program {
static void Main(string[] args) {
Console.WriteLine(1 / 2);
Console.ReadLine();
}
}

输出:0

你对这个结果满意吗?当表达式的左侧和右侧是整数时,它在技术上是正确的、记录在案的行为。那做了一个快速的整数除法。处理器上的 IDIV 指令,而不是(臭名昭著的)FDIV 指令。也与所有花括号语言的工作方式完全一致。但绝对是SO的“wtf发生”问题的主要来源。要获得满意的结果,您必须执行以下操作:
    Console.WriteLine(1.0 / 2);

输出:0.5

左侧现在是 double 数,强制进行浮点除法。用你的计算器显示的那种结果。调用 FDIV 的其他方法是将右侧设为浮点数或将其中一个操作数显式转换为 (double)。

VB.NET 不是这样工作的,/运算符是 总是 浮点除法,与类型无关。有时你真的想要一个整数除法。就是这样 \做。

关于vb.net - VB.NET 中的除法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4341611/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com