运算符:
语法列表
- = 赋值
- +(加)
- -(减)
- *(乘)
- / (除)
- % (取模)
= 赋值说明
=赋值运算符(单个等号)
把等号右边的值存储到等号左边的变量中。
在C语言中单个等号被称为赋值运算符。它与在代数课中的意义不同,后者象征等式或相等。赋值运算符告诉微控制器求值等号右边的变量或表达式,然后把结果存入等号左边的变量中。
示例
int sensVal; //声明一个名为sensVal的整型变量
senVal = analogRead(0); //存储(数字的)0号模拟引脚的输入电压值到sensVal
编程技巧
赋值运算符(=号)左边的变量需要能够保存存储在其中的值。如果它不足以大到容纳一个值,那个存储在该变量中的值将是错误的。
不要混淆赋值运算符[ = ](单个等号)和比较运算符[ == ](双等号),后者求值两个表达式是否相等。
加,减,乘,除说明
描述
这些运算符(分别)返回两人运算对象的和,差,积,商。这些操作受运算对象的数据类型的影响。所以,例如,9 / 4结果是2,如果9和2是整型数。这也意味着运算会溢出,如果结果超出其在相应的数据类型下所能表示的数。(例如,给整型数值32767加1结果是-32768)。如果运算对象是不同的类型,会用那个较大的类型进行计算。
如果其中一个数字(运算符)是float类型或double类型,将采用浮点数进行计算。
示例
y = y + 3;
x = x - 7;
i = j * 6;
r = r / 5;
语法
result = value1 + value2;
result = value1 - value2;
result = value1 * value2;
result = value1 / value2;
参数:
value1:任何变量或常量
value2:任何变量或常量
编程技巧:
要知道整型常量默认为int型,因此一些常量计算可能会溢出(例如:60 * 1000将产生负的结果)
选择一个大小足够大的变量以容纳你的最大的计算结果。
要知道你的变量在哪一点将会“翻转”且要知道在另一个方向上会发生什么,例如:(0 – 1)或(0 – 32768)。
对于数学需要分数,就使用浮点变量,但是要注意它们的缺点:占用空间大,计算速度慢。
使用强制类型转换符例如:(int)myFloat以在运行中转换一个变量到另一个类型。
取模说明
%(取模)
描述
计算一个数除以另一个数的余数。这对于保持一个变量在一个特定的范围很有用(例如:数组的大小)。
语法
result = dividend % divisor
参数
dividend: 被除数
divisor: 除数
结果:余数
示例
x = 7 % 5; // x now contains 2
x = 9 % 5; // x now contains 4
x = 5 % 5; // x now contains 0
x = 4 % 5; // x now contains 4
示例代码
/* update one value in an array each time through a loop */
int values[10];
int i = 0;
void setup() {}
void loop()
{
values[i] = analogRead(0);
i = (i + 1) % 10; // modulo operator rolls over variable
}
提示:
取模运算符不能用于浮点型数。