Integer Constants

[Constants]

説明

整数定数は、123 のようにスケッチで直接使用される数値です。デフォルトでは、これらの数値は int として扱われますが、U および L 修飾子を使用してこれを変更できます (以下を参照)。

通常、整数定数は 10 進数の整数として扱われますが、特殊な表記法 (フォーマッタ) を使用して他の基数で数値を入力することもできます。

BaseFormatter備考
10 (decimal)123none
2 (binary)B1111011leading ‘B’only works with 8 bit values (0 to 255)
characters 0-1 valid
8 (octal)0173leading ‘0’characters 0-7 valid
16 (hexadecimal)0x7Bleading “0x”characters 0-9, A-F, a-f valid

10進数は10を基数とします。これは皆さんがよくご存知の常識的な数学です。他の接頭辞のない定数は10進数形式であるとみなされます。

101 // same as 101 decimal ((1 * 10^2) + (0 * 10^1) + 1)

2進数は2を基数とします。有効な文字は0と1のみです。

B101 // same as 5 decimal ((1 * 2^2) + (0 * 2^1) + 1)

バイナリフォーマッタは、0 (B0) から 255 (B11111111) までのバイト (8 ビット) に対してのみ機能します。int (16 ビット) をバイナリ形式で入力したい場合は、以下の 2 段階の手順で入力できます。

myInt = (B11001100 * 256) + B10101010; // B11001100 is the high byte

8進数は8を基数とします。有効な文字は0から7までです。8進数値は接頭辞「0」で示されます。

0101 // same as 65 decimal ((1 * 8^2) + (0 * 8^1) + 1)

*警告:
定数の前に (意図せず) ゼロを含め、コンパイラが意図せず定数を 8 進数として解釈することによって、見つけにくいバグが生成される可能性があります。

16進数(hexadecimal)は16進数です。有効な文字は0から9までとAからFまでです。Aは10、Bは11、Fは15です。16進数値は接頭辞「0x」で示されます。AからFは大文字でも小文字でも入力できます(aからf)。

0x101 // same as 257 decimal ((1 * 16^2) + (0 * 16^1) + 1)

U & Lフォーマッタ

デフォルトでは、整数定数は int として扱われ、値にはそれに伴う制限があります。整数定数を別のデータ型で指定するには、次のように記述します。

  • 定数を符号なしデータ形式に強制するには、'u' または 'U' を使用します。例: 33u
  • 定数を長いデータ形式に強制するには、'l' または 'L' を使用します。例: 100000L
  • 'ul' or 'UL' to force the constant into an unsigned long constant. Example: 32767ul

参照


Language Reference Home

86Duinoリファレンスのテキストは、Arduinoリファレンスを改変したもので、Creative Commons Attribution-ShareAlike 3.0ライセンスに基づいてライセンスされています。リファレンス内のコードサンプルはパブリックドメインとして公開されています。

上部へスクロール