Visual Basic サンプル集 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Visual Basic 中学校 > Visual Basic サンプル集 > Visual Basic サンプル集目次 >
16進数で数値リテラルを表記する
2022/9/4
→ C# のサンプルに切り替える → Python のサンプルに切り替える
16進数で数値リテラルを表記する
先頭に &H を付けた数値リテラルは16進数 で解釈されます。
'標準的な方法。&H123 は 16進数なので10進数表記だと 291 です。
Dim i1 As Integer = &H123
Debug.WriteLine(i1) ' 291 と出力されます。
'16進数なので、A~F の文字も使えます。
Dim i2 As Integer = &HB2
Debug.WriteLine(i2) ' 178 と出力されます。
'お好みの位置に _ を追加して見やすく整えることができます。
Dim i3 As Integer = &H47_A6_BC ' &H47A6BC と表記しても同じです。
Debug.WriteLine(i3) ' 4695740 と出力されます。
'おまけ。16進数表記の文字列に変換するには、書式指定子 X を使用します。
Dim s1 As String = $"{i3:X}"
Debug.WriteLine(s1) ' 47A6BC と出力されます。
メモ: 2進数は &B 、 8進数は &O で表記できます。「&O」はアンドと英語のオーです。
参考:10進数で表記しても16進数で表記しても同じ値です。
令和4年が西暦の2022年と同じであるように、同じ値を10進数と16進数のどちらで表記しても同じです。
このプログラムでは &HFF と 255 が表記方法が違うだけで、同じであることが確認できます。
If &HFF = 255 Then
Debug.WriteLine("同じ値です。") ' ←実行するとこれが出力されます。
End If
VB6でも同じです。
&Hを付けると16進数になります。