当前位置: C语言 -- 标准库 -- <iso646.h> -- or_eq

or_eq宏


概要:

#define or_eq |=


描述:

该宏是赋值运算符|=的替代拼写方案。

a or_eq b等同于a = (a bitor b)


范例:
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
/*宏or_eq范例*/

#include <iso646.h>
#include <stdio.h>

int main(void)
{
    int a = 5;
    printf("a = %d", (a or_eq 7));

    return 0;
}


输出:

a = 7

(a or_eq 7)等同于a = a bitor 7

5的二进制形式为:0101

7的二进制形式为:0111

0 1 0 1
| 0 1 1 1
0 1 1 1

(5 bitor 7)的结果为7,所以(a or_eq 7)等同于a = 7;表达式a = 7一方面将变量a的值修改为7,另一方面整个表达式的值也为7,所以%d对应的值为7


相关内容:
or 表示||的宏。
bitor 表示|的宏。