【问题标题】:What does "|" between integers整数之间的\"|\"是什么意思
【发布时间】:2022-12-01 10:23:13
【问题描述】:

例如,这里发生了什么

printf("%d\n", 100 | 200);

输出是:236

不幸的是我没有找到任何东西,分别我不知道技术术语

【问题讨论】:

标签: c


【解决方案1】:

这是一个“按位或”运算。

为简单起见,如果语句是

a = 1 | 2; 

那么答案将是 3,因为当您将 1 和 2 转换为二进制并进行 OR 运算时,您会得到 3 即(假设 8 位数字)

1 =  0000 0001
2 =  0000 0010

当您对以上两个进行按位或运算时,您会得到 0000 0011,即 3 相似地

100 = 0xC8 = 0110 0100
200 = 0x64 = 1100 1000
Answer is 1110 1100 = 0xEC = 236

【讨论】:

    猜你喜欢
    • 2023-03-21
    • 2019-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-25
    • 1970-01-01
    • 1970-01-01
    • 2013-05-12
    相关资源
    最近更新 更多