首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

Sgn(三 > 2)为何返回值为 -1

2013-04-09 
Sgn(3 2)为何返回值为 -1?看说明 Sgn(number)number 0 返回1number 0 返回0number 0 返回-1为何Sg

Sgn(3 > 2)为何返回值为 -1?
看说明 Sgn(number)

number > 0 返回1
number = 0 返回0
number < 0 返回-1

为何Sgn(3 > 2)返回-1 ?
[解决办法]
vb中以-1表示真。
[解决办法]
唉,这些常数值的管理混乱是令人头痛的事。
不过我刚才在vb.net里测试了下,并非如4楼说的那样:

Me.Text = CLng(True).ToString()
Me.Text += CLng(3>2).ToString()'-1-1

[解决办法]
看来教材误导大家。VB.net早期的教材确实说过True的底层值为1。也许微软是为了保持兼容性,在后来的高版本中又改回来了(猜测而已)。
另外,在用Cbool转换过程中,凡是非0都转换成了TRUE,0转换成FALSE。
看看这个就明白了:http://zhidao.baidu.com/question/85497221.html

热点排行