説明
sizeof 演算子は、変数型に含まれるバイト数や、配列に含まれるバイト数を返します。
構文
sizeof(variable)
variable(変数):サイズを取得するもの
許容されるデータ型:任意の変数型または配列(例:int、float、byte)
戻り値
変数の中のバイト数、または、配列の中で占められているバイト数
データ型: size_t
プログラム例
sizeof演算子は、配列(文字列など)を扱う際に、プログラムの他の部分を壊さずに配列のサイズを変更できた方が便利です。
このプログラムは,テキスト文字列を1文字ずつ出力します。テキストのフレーズを変えてみてください。
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ループは次のようになります.
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] }