(Macro) Calculates the minimum of two numbers.
min(x,y)
x: the first number; may be any number or numeric expression.
y: the second number; may be any number or numeric expression.
The smaller of the two numbers.
sensVal = min(sensVal, 100); // assigns sensVal to the smaller of sensVal or 100
// ensuring that it never gets above 100.
Note
Perhaps counter-intuitively, max() is often used to constrain the lower end of a variable’s range, while min() is used to constrain the upper end of the range.
Because of the way min() is implemented, avoid using other functions inside the parentheses. It may lead to incorrect results:
min(a++, 100); // avoid this - yields incorrect results
a++; // use this instead -
min(a, 100); // keep other operations outside min()
The Maple version of min() is compatible with Arduino.
License and Attribution
Portions of this page were adapted from the Arduino Reference Documentation, which is released under a Creative Commons Attribution-ShareAlike 3.0 License.