次のコードがあります。
SN.get_Chars(5)
SNは文字列なので、これは 5 番目の Char を与えるはずです。Ok!
今、私は別のコードを持っていますが:SN.get_Chars(0x10)
0x10ってなんだろう?数字ですか?もしそうなら、それは10進数で何ですか?
0xNNNN(必ずしも 4 桁である必要はありません) は、少なくとも C では、16 進数 (ラテン語由来の言語では 'hex' が 6 で 'dec' が 10 であるため、基数 16 )を表しますN。10 から 15 までのいずれかを表す小文字の同等物) であり、数値にはこれらの数字が 1 つ以上含まれる場合があります。それを表す別の方法は NNNN 16です。09AF
1 桁の 16 進数が 4 ビット (2 進数) を表すため、コンピューターの世界では非常に便利です。これは、それぞれが 2 つの可能な値を持つ 4 ビットで、合計2 x 2 x 2 x 2または16(2 4 ) の値が得られるためです。言い換えると:
_____________________________________bits____________________________________
/ \
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
| bF | bE | bD | bC | bB | bA | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 |
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
\_________________/ \_________________/ \_________________/ \_________________/
Hex digit Hex digit Hex digit Hex digit
X を基数とする数値は、各位置が X の累乗の倍数を表す数値です。
私たち人間が慣れ親しんでいる 10 進法では、使用される数字は0~9で、数字 7304 10は次のとおりです。
8 進数で、数字は0~7です。番号 754 8は次のとおりです。
C の 8 進数の前には文字が付いている0ため0123、123 ではなく、(1 * 64) + (2 * 8) + 3、つまり 83 になります。
2 進数では、数字は0と1です。番号 1011 2は次のとおりです。
16 進数で、数字は0~9とA~ですF(これは ~ の「数字」を表します10) 15。番号 7F24 16は次のとおりです。
0x10C が 10 16を表す方法である比較的単純な数は、次のとおりです。
余談ですが、数のさまざまな基数は多くのことに使用されます。
0x は、数値が16 進数または基数 16 であることを意味します。
0x10 は 16 です。
これは 16 進数で、10 進数で 16 です。
'10' は、そのベースのベースの表現であることに注意してください。
10 は底 2 の 2(10 進数)
10 は 3 進法の 3 (10 進数) です。
...
10 は 10 進数の 10 です。
...
10 は base-16 (16 進数) で 16 (10 進数) です。
...
10 は 1024 を底とする 1024 (10 進数) です。
...等々