25

Int()との ASP/VBScript の違いは何CInt()ですか?

4

4 に答える 4

38

Int 関数は、指定された数値の整数部分を返します。

CInt 関数は、式を整数型に変換します。

そして、最良の答えはMSDNから来ます

CInt は、数値の小数部分を四捨五入するのではなく、切り捨てる Fix および Int 関数とは異なります。小数部が正確に 0.5 の場合、CInt 関数は常に最も近い偶数に丸めます。たとえば、0.5 は 0 に丸められ、1.5 は 2 に丸められます。

于 2008-08-21T18:04:43.407 に答える
18

そして、最も重要な違い (少なくとも IME) は、CIntが 32,767 でオーバーフローすることです。

于 2008-08-25T03:11:03.490 に答える
5

この問題に対する通常の答えは、手動で再丸めを強制することです。この問題は、FORTRAN と同じくらい古い問題です。

それ以外の

a = int(40.91 * 100)

使用する

b = 40.91 * 100
a = int(b + 0.5)

非常に古いトリックですが、Excel スプレッドシートで時々役立つことがあります。

于 2010-12-10T00:12:23.063 に答える
4

ここに別の違いがあります:

脚本:

wscript.echo 40.91 * 100
wscript.echo Int(40.91 * 100)
wscript.echo CInt(40.91 * 100)

結果:

4091
4090   (????)
4091

何かご意見は?

于 2008-12-11T16:38:42.353 に答える