Terminates a function and return a value from a function to the calling function, if the function has non-void return type.
// from within a "void" function:
return;
// from within a non-"void" function:
return value;
In the second case, value should have a type which is the same as the return type of the function, or be convertible to it (like an int to a double, etc.; see this note for some references).
A function to compare a sensor input to a threshold:
// converts analog readings between 0 and 400 to 0, and 400 up to 1.
int checkSensor() {
if (analogRead(0) > 400) {
return 1;
else {
return 0;
}
}
An early return is also useful when testing a section of code without having to “comment out” large sections of possibly buggy code, like so:
void loop() {
// brilliant code idea to test here
return;
// the rest of a dysfunctional sketch here
// this code will never be executed
}
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.