This page is also available in 3 other languages




Constrains a number to be within a range.


constrain(x, a, b)


x: the number to constrain, all data types a: the lower end of the range, all data types b: the upper end of the range, all data types


x: if x is between a and b

a: if x is less than a

b: if x is greater than b

Example Code

The code limits the sensor values to between 10 to 150.

sensVal = constrain(sensVal, 10, 150);  // limits range of sensor values to between 10 and 150

Notes and Warnings

Because of the way the constrain() function is implemented, avoid using other functions inside the brackets, it may lead to incorrect results.

This code will yield incorrect results:

int constrainedInput = constrain(Serial.parseInt(), minimumValue, maximumValue);   // avoid this

Use this instead:

int input = Serial.parseInt();  // keep other operations outside the constrain function
int constrainedInput = constrain(input, minimumValue, maximumValue);

See also