delphi中True 和False
var B:Boolean; begin B :=False ; ShowMessage(BoolToStr(B)); 为什么B为False时输出为0,B为True时输出为-1????True的值不是1,False为0吗?
var B:Boolean; begin B :=False ; ShowMessage(BoolToStr(B)); 为什么B为False时输出为0,B为True时输出为-1????True的值不是1,False为0吗?
答案:Delphi中定义了四种布尔类型:Boolean,ByteBool,WordBool和LongBool。
对于ByteBool,WordBool和LongBool三种类型True常量的值为非零,False为零,可以用Ord函数验证;而对于Boolean类型,True常量的值为1,False为零。但是编译器在期望Boolean值的上下文中,为了兼容BoolToStr会把true转化为一个非零值(-1)。
其他:好像不是,是0为False,不是0的都代表true; 在DELPHI,假值是0,真值是-1.
在SQL SERVER,假值是0,真值是1
在ACCESS里,假值是0,真值是-1
共同之处,0都是假值。
上一个:delphi 的力量是伟大的,可.....我找不到好的教程,我找到的教程全部都有催眠的作用,求教程啊!!!
下一个:delphi 7.0小问题