3.printfを使いこなそう

3-2. 8進数、16進数として表示するには?

◆8進数、16進数として表示するには?

整数を8進、16進数として表示する変換指定子です。
まずは、

◇%o

%oは整数を符号なしの8進数として表示するための変換指定子です。

#include<stdio.h>
main()
{
    printf("%o\n",32);
}

結果:
40

と表示されます。(8進数の40は10進数の32です)

◇%x

今度は整数を16進数として表示する変換指定子です。

#include<stdio.h>

main()
{
    printf("%x",234);
}

結果:
ea

と表示されます。

16進数の表示のとき10~15の数はアルファベットのa~fを用いて表示します。

また、16進数表示の変換指定子にはもうひとつあります。

◇%X

今度はエックスが大文字になっています。
これは、16進数を表示するときにつかうアルファベットに大文字を使うことを意味します。

#include<stdio.h>

main()
{
    printf("%X",234);
}

結果:
EA

このように、a~fがA~Fとなります。