【发布时间】:2010-07-29 20:07:05
【问题描述】:
我想比较两个十六进制(长存储) 下面是我的代码
long constant = 80040e14;
if(constant == 80040e14)
cout<<"Success"<<endl;
else
cout<<"Fail!!"<<endl;
在此代码流控制总是返回到else部分,谁能建议如何进行比较。
谢谢
Santhosha K
【问题讨论】:
-
@Binary Worrier:它仅使用
e字符编译(因为它被视为指数)。对于每个其他十六进制字符,它都是编译器错误。 -
这些数字不是整数。他们是双打。尝试用 BAADF00D 或 DEADBEEF 做同样的事情,看看会发生什么。
-
@Naveen:当然!我可能曾经知道你可以这样做,但如果我这样做了,那是 20 年前的事了,后来被更重要的东西赶走了,可能是我妻子的名字 :) 谢谢伙计。
标签: c++