当前位置:编程学习 > VB >>

VB代碼報錯,請老師指正!

--------------------编程问答-------------------- Sgn(i And 2 ^ j)溢出。 --------------------编程问答-------------------- 2 ^ j    j=0就溢出, 初中数学知识. --------------------编程问答-------------------- And运算会转换 2^j 为 Integer 类型,当 j 超过 32 时已经达到 Integer 类型的极限,顾溢出。 --------------------编程问答--------------------
引用 2 楼 wallescai 的回复:
2 ^ j j=0就溢出, 初中数学知识.


2^0 = 1 --------------------编程问答-------------------- 求解決辦法! --------------------编程问答--------------------
引用 5 楼 aoranbuqun 的回复:
求解決辦法!

你先说说你这句:Sgn(i And 2 ^ j) * N(j) 是干嘛的。 --------------------编程问答--------------------
引用 6 楼 programfana 的回复:
引用 5 楼 aoranbuqun 的回复:
求解決辦法!

你先说说你这句: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数据类型范围 --------------------编程问答--------------------
引用 4 楼 programfana 的回复:
引用 2 楼 wallescai 的回复:
2 ^ j j=0就溢出, 初中数学知识.


2^0 = 1


对不起,我错了,初中数学还给老湿了,是底数为0溢出
补充:VB ,  数据库(包含打印,安装,报表)
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,