帮忙看一句C程序是啥意思。。。

来源:百度知道 编辑:UC知道 时间:2024/06/19 15:20:11
#define DATE_HIGH_VALUE ((PT_DATE)"\x08\x01" "\x0C" "\x1F")

常量DATE_HIGH_VALUE 到底是多少阿?
后面那个怎么算?
用的地方是这个:
DTE_CopyDate(&tEmpKykaKnrChshtJkn.dtEndYmd, DATE_HIGH_VALUE);

DATE_HIGH_VALUE 应该是个日期。。。

我就是想知道((PT_DATE)"\x08\x01" "\x0C" "\x1F") 是什么东东。。。

DATE_HIGH_VALUE 不是常量啊,这东西叫 “宏”。
你把((PT_DATE)"\x08\x01" "\x0C" "\x1F")
替换到程序中用到DATE_HIGH_VALUE的地方去才能看出是什么意思。

宏定义的名称而已,是用户自己定义的吧,不过也有可能是某个库函数的内部定义

以我个人的知识所得的结论:
在编译的时候
DTE_CopyDate(&tEmpKykaKnrChshtJkn.dtEndYmd, DATE_HIGH_VALUE);
就被替换成了
DTE_CopyDate(&tEmpKykaKnrChshtJkn.dtEndYmd, ((PT_DATE)"\x08\x01" "\x0C" "\x1F") );
然后进行编译的.
至于DTE_CopyDate tEmpKykaKnrChshtJkn.dtEndYmd 和 PT_DATE 都不是库函数,只凭这一小段内容无法得出详细的结论.