Bitwise Operator and Logical Operator

・Bitwise AND Operator & と Logical AND Operator &&

C/C++の論理演算(logical operation)では、0は偽(false)、0以外は真(true)です!

and.c

#include <math.h>
#include <stdio.h>

int main(void) {
  printf("%d\n", 0&1);
  printf("%d\n", 2&3);
  printf("%d\n", 0&&1);
  printf("%d\n", 2&&3);
  printf("%d\n", 'a'&&"abc");

  int i = 3;
  int n = 7;
  if ((int)pow(2, i - 1) & n) {
    printf("The %d-th bit in the binary representation of the decimal number %d is 1!\n", i, n);
  }
  else {
    printf("The %d-th bit in the binary representation of the decimal number %d is 0!\n", i, n);
  }
}

〈実行結果〉

0
2
0
1
1
The 3-th bit in the binary representation of the decimal number 7 is 1!


参考サイト

1.Google:Bitwise Operator and Logical Operator
2.2進数、8進数、10進数、16進数相互変換ツール

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中