可能な進数表記
C言語では通常使う10進数の他に2、8、16進数表記を用いることが可能です。
表のように、数の先頭に接頭辞をつけます。
| 2進数 | 0b |
| 8進数 | 0 |
| 16進数 | 0x |
以下がサンプルコードです。
binaly_sample1.c
#include <stdio.h>
int main(void)
{
printf("%d\n", 255);
printf("%d\n", 0b11111111);
printf("%d\n", 0377);
printf("%d\n", 0xff);
return 0;
}
上から10、2、8、16進数で10進数255を表しています。
以下のように表記の異なる演算も可能です。
binaly_sample2.c
#include <stdio.h>
int main(void)
{
printf("%d\n", 256 + 0b100000000 + 0400 + 0x100);
return 0;
}
また、printf()で進数表記を変更する場合は以下のようにします。
binaly_sample3.c
#include <stdio.h>
int main(void)
{
printf("%d\n", 256);
printf("%o\n", 256);
printf("%x\n", 256);
return 0;
}
上から10、8、16進数表記になります。
2進数表記はありません。自分で2進数表記する関数を作ってみましょう。
ビット演算
論理和、論理積などのビット演算もサポートしています。
詳しくはビット演算子を参照してください。