奇怪!x:=1000 or 100 or 0 or 0,x的值怎么是1004?

marrymeng 2005-03-22 05:25:57
x:=a or b or c or d;
x,a,b,c,d 均是interger,
调试时发现a=1000,b=0100,c=0,d=0时x=1004,
why?应该是1100啊?
...全文
131 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Heyongfeng 2005-03-23
  • 打赏
  • 举报
回复
你把数制搞错了吧,计算机是转成二进制计算的。
梦想家大魔王 2005-03-22
  • 打赏
  • 举报
回复
Dec | Bin
----------------------------
1000 | 00000011,11101000
100 | 00000000,01100100
0 | 00000000,00000000
-------|--------------------
1004 | 00000011,11101100

10并非2的整数次方,或运算不是简单的把你看到的每一位相加就行了。
才子鸣 2005-03-22
  • 打赏
  • 举报
回复
up
xiaonian_3654 2005-03-22
  • 打赏
  • 举报
回复
$1000 or $100 or $0 or $0 = $1100
xiaonian_3654 2005-03-22
  • 打赏
  • 举报
回复
你大概以为是十六进制了
$1000 or $100 or $0 or $ = $1100
navyfish 2005-03-22
  • 打赏
  • 举报
回复
为什么不用+?

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧