欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言中位運(yùn)算符"|"的5種高級(jí)用法總結(jié)

 更新時(shí)間:2023年04月12日 08:29:00   作者:知微之見  
這篇文章主要為大家詳細(xì)介紹了C語言中位運(yùn)算符"|"的5種高級(jí)用法,文中的示例代碼講解詳細(xì),具有一定的參考價(jià)值,需要的可以參考一下

前言

在上一篇文章中,我們介紹了&運(yùn)算符的高級(jí)用法,本篇文章,我們將介紹|運(yùn)算符的一些高級(jí)用法。

一、將兩個(gè)字節(jié)合并成一個(gè)16位整數(shù)

#include <stdio.h>

int main() 
{
    unsigned char lowByte = 0x12;   // 0001 0010
    unsigned char highByte = 0x34;  // 0011 0100
    unsigned short result = (highByte << 8) | lowByte;  // 0011 0100 0001 0010
    printf("合并結(jié)果為 %04x\n", result);       // 輸出: 0x3412
    return 0;
}

二、將一個(gè)字節(jié)的低4位和高4位交換

#include <stdio.h>

int main() 
{
    unsigned char data = 0xab;   // 1010 1011
    data = (data << 4) | (data >> 4);  // 1011 1010
    printf("交換結(jié)果為 %02x\n", data);      // 輸出:0xba
    return 0;
}

三、將一個(gè)字節(jié)中的某些位置1

#include <stdio.h>
int main() 
{
    int x;
    printf("請(qǐng)輸入一個(gè)數(shù):");
    scanf("%d", &x);
    printf("\n第4位置1后,這個(gè)數(shù)變?yōu)?%d\n", x | 0b1000); 
    return 0;
}

四、將一個(gè)字節(jié)中的某些位置0

#include <stdio.h>
int main() {
    int x;
    int a = 0b1000; 
    printf("請(qǐng)輸入一個(gè)數(shù):");
    scanf("%d", &x);
    printf("\n第4位置0后,這個(gè)數(shù)變?yōu)?%d\n", (x | a) - a ); 
    return 0;
}

五、將低位連續(xù)的0變?yōu)?

#include <stdio.h>
int main() 
{
    int x;
    printf("請(qǐng)輸入一個(gè)數(shù):");
    scanf("%d", &x);
    printf("\n低位連續(xù)的0變?yōu)?,這個(gè)數(shù)變?yōu)?d\n", x | (x-1) );
    return 0;
}

小結(jié)

通過這篇文章,我們學(xué)會(huì)了用位運(yùn)算符|的5種高級(jí)用法

  • 1、將兩個(gè)字節(jié)合并成一個(gè)16位整數(shù)
  • 2、將一個(gè)字節(jié)的低4位和高4位交換
  • 3、將一個(gè)字節(jié)中的某些位置1
  • 4、將一個(gè)字節(jié)中的某些位置0
  • 5、將低位連續(xù)的0變?yōu)?

到此這篇關(guān)于C語言中位運(yùn)算符"|"的5種高級(jí)用法總結(jié)的文章就介紹到這了,更多相關(guān)C語言位運(yùn)算符內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論