sizeof()

名称

sizeof()

説明

sizeof演算子は変数の型の大きさ(バイト数)、もしくは、配列が占める総バイト数を返却する。

書式

size_t sizeof(variable);

引数

variable大きさを取得したいもの。任意の変数のデータ型。

戻り値

変数、もしくは、配列が占有するバイト数。

使用例

sizeof演算子は、プログラムの他の部分は変更せずに、配列の大きさ変更するのが容易なので、文字列のような配列を扱うときに便利である。

このプログラムは、一度に一文字ずつ表示する。myStrの文字列を変更して試してほしい。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
char myStr[] = "this is a test";

void setup() {
  Serial.begin(9600);
}

void loop() {
  for (byte i = 0; i < sizeof(myStr) - 1; i++) {
    Serial.print(i, DEC);
    Serial.print(" = ");
    Serial.write(myStr[i]);
    Serial.println();
  }
  delay(5000);  // slow down the program
}

注意

sizeof演算子はバイト数の合計を返す。intの配列のような大きな型の場合は、以下のようにforループを記述する。

1
2
3
4
5
6
int myValues[] = {123, 456, 789};

// this for loop works correctly with an array of any type or size
for (byte i = 0; i < (sizeof(myValues) / sizeof(myValues[0])); i++) {
  // do something with myValues[i]
}

適切に整形された文字列はNULL(値は0)シンボルで終了することにも注意すること。

参照

オリジナルのページ

https://www.arduino.cc/reference/en/language/variables/utilities/sizeof/

Last Revision: 2019/07/22

最終更新日

January 4, 2024

inserted by FC2 system