说明
sizeof操作符返回一个变量的字节数,或者返回数组占用的字节数。
语法
sizeof (variable)
参数
variable: 任何变量类型或数组(如int,float,byte)
示例程序1
sizeof操作符用来处理数组非常有效。它能很方便的改变数组的大小而不破坏程序的其他部分。
以下程序一次打印出一个字符串文本的字符。你可以试着改变一下以下程序中第一行语句的字符串内容,看一看运行结果的变化。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
char myStr[] = "this is a test"; int i; void setup(){ Serial.begin(9600); } void loop() { for (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 } |
运行结果
示例程序2
sizeof操作符也可以用来判断各种变量类型所占用的Arduino内存情况。以下示例程序显示几种变量类型所占用的字节大小。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
void setup() { Serial.begin(9600); bool boolVar; byte byteVar; int intVar; float floatVar; long longVar; Serial.print("sizeof(boolVar) = "); Serial.println(sizeof(boolVar)); Serial.print("sizeof(byteVar) = "); Serial.println(sizeof(byteVar)); Serial.print("sizeof(intVar) = "); Serial.println(sizeof(intVar)); Serial.print("sizeof(floatVar) = "); Serial.println(sizeof(floatVar)); Serial.print("sizeof(longVar) = "); Serial.println(sizeof(longVar)); } void loop() { } |