VB代碼報錯,請老師指正!
--------------------编程问答-------------------- Sgn(i And 2 ^ j)溢出。 --------------------编程问答-------------------- 2 ^ j j=0就溢出, 初中数学知识. --------------------编程问答-------------------- And运算会转换 2^j 为 Integer 类型,当 j 超过 32 时已经达到 Integer 类型的极限,顾溢出。 --------------------编程问答--------------------2^0 = 1 --------------------编程问答-------------------- 求解決辦法! --------------------编程问答--------------------
你先说说你这句:Sgn(i And 2 ^ j) * N(j) 是干嘛的。 --------------------编程问答--------------------
這個是幹嘛的?我真不知道。
我用的這段代碼是從網上找的,用來數組求和的。
當j>31時 2^j超過了integer的範圍。
但是sgn()函數的返回值只有三個:1、0、-1,不知道這個sum=sum+Sgn(i And 2 ^ j) * N(j) 是干嘛的。
請各位老師幫忙! --------------------编程问答-------------------- And 运算符还对两个数值表达式中位置相同的位进行逐位比较,此时数值范围不能超过Long数据类型范围 --------------------编程问答--------------------
对不起,我错了,初中数学还给老湿了,是底数为0溢出
补充:VB , 数据库(包含打印,安装,报表)