zoukankan      html  css  js  c++  java
  • Windows中的BOOL与delphi中Boolean

    Windows中的BOOL:4字节,是LongBool

    TRUE = -1:即DWORD(-1),同时任何非零值都为TRUE; 

    FALSE = 0:即DWORD(0) 

    4字节的意思就是在强制转换时,这句BOOL(INT64($1122334400000000))为False,因为强制转换时从低位数据取值的(Big Endian的CPU规则当然就是相反)

    delphi中Boolean

    这个非常值得注意的类型,Delph默认的Boolean是用ByteBool,所以在强制转换类型时下面都是False

    Boolean(0) :False
    Boolean(256) :False
    Boolean(512) :False
    Boolean(768) :False
    Boolean(1024) :False
    ....
    ........

    ................等等,也就是只要最d低位1字节为0,则为False,反之如果不为0则为True,

    C语言中可以使用如下判断整型

    int i=256;

    if (i) {};

    但是delphi中要判断一个整型数是否为0,通常情况下需要用<>,=之类的符号

    所以上面的写法正确应该是

    Boolean(0<>0) :False
    Boolean(256<>0) :True
    Boolean(512<>0) :True  

    ....
    ........

    ...............

    C++中的bool

    TRUE : <>0 

    FALSE : 0

  • 相关阅读:
    flask多线程多协程操作
    flask介绍
    centos django+Nginx+uwsgi部署
    centos下运行python3.6+Django+mysql项目
    centos虚拟机下安装nginx
    redis安装
    路飞学城课程_课程详细_作业点评
    redis使用方式
    git命令学习
    组合&多态&封装
  • 原文地址:https://www.cnblogs.com/caibirdy1985/p/4232981.html
Copyright © 2011-2022 走看看