当在vba中执行语句 MsgBox -1 = True 时,将弹出True。
也就是在vba中True=-1,这个是为什么呢。
因为Boolean类型的变量以两个字节存储,而值只能是True 或者 False,它表示的是两个相反的状态。
其中0的二进制形式为“0000 0000 0000 0000”,与0相反的二进制形式为“1111 1111 1111 1111”,这个二进制形式刚好是-1在内存中的存储形式,所以用这两种相反的状态来分别表示False 或者 True,这样True=-1。
关注和分享Excel以及Office系列软件的方方面面,致力于提高中国的办公软件的使用水平
当在vba中执行语句 MsgBox -1 = True 时,将弹出True。
也就是在vba中True=-1,这个是为什么呢。
因为Boolean类型的变量以两个字节存储,而值只能是True 或者 False,它表示的是两个相反的状态。
其中0的二进制形式为“0000 0000 0000 0000”,与0相反的二进制形式为“1111 1111 1111 1111”,这个二进制形式刚好是-1在内存中的存储形式,所以用这两种相反的状态来分别表示False 或者 True,这样True=-1。
发表评论