代码之家  ›  专栏  ›  技术社区  ›  RSolberg

经典ASP应用程序CINT失败-TwitPocalypse v2

  •  6
  • RSolberg  · 技术社区  · 15 年前

    由于qty值超过了vbscript int可以存储的值,我收到了一条非常糟糕的错误消息(实际上用户是…)。这完全是一个 twitpocalypse .

    既然cint()在这种情况下不起作用,那么最好的解决方法是什么?

    requestqty = 40200
    CInt() max = 32767
    
    CInt(requestqty) 
    

    编辑
    clng()似乎能做到这一点,任何代码将所有cint()更改为clng()的风险都会发生。从我在下面读到的和Elsehare在网络上的内容来看,似乎根本没有理由使用cint()。我没有写这个特定的应用程序,也不知道为什么一个应用程序比另一个应用程序被使用,但我宁愿不带着这个问题,在应用程序中完全修复这个问题,这样它就不会再次发生了…

    3 回复  |  直到 9 年前
        1
  •  11
  •   Guffa    15 年前

    aways在vbscript中使用long而不是int(除非您特别希望将值限制在int范围内)。

    使用较小的类型没有性能优势,也没有存储大小优势,因为所有变量都是变量,所以所有简单类型都使用相同的内存量。

    使用 CLng 函数而不是 CInt 功能。

        2
  •  2
  •   shahkalpesh    15 年前

    CLNG或CDEC或CDBL

        3
  •  2
  •   TMcGill    15 年前

    并使用long而不是int?