Skip to Main Content
Idaho State University home

Glossary

Filter:
# A B C D E F G H I J K L M N O P Q R S T U V W X Y Z All
F
Fan
FAQ
FAX
FCA
FDM
FEC
FER
FIN
Fix
FOI
FQR
FQT
FRD
Fry
FSD
FTS
Fall Through
  • v. (n. `fallthrough', var. `fall-through') To exit a loop by exhaustion, i. e. , by having fulfilled its exit condition rather than via a break or exception condition that exits from the middle of it. This usage appears to be *really* old, dating from the 1940s and 1950s.
  • To fail a test that would have passed control to a subroutine or some other distant portion of code.
  • In C, `fall-through' occurs when the flow of execution in a switch statement reaches a `case' label other than by jumping there from the switch header, passing a point where one would normally expect to find a `break'. A trivial example switch (color) case GREEN do_green(); break; case PINK do_pink(); /* FALL THROUGH */ case RED do_red(); break; default do_blue(); break; The variant spelling `/* FALL THRU */' is also common. The effect of the above code is to `do_green()' when color is `GREEN', `do_red()' when color is `RED', `do_blue()' on any other color other than `PINK', and (and this is the important part) `do_pink()' *and then* `do_red()' when color is `PINK'. Fall-through is considered harmful by some, though there are contexts (such as the coding of state machines) in which it is natural; it is generally considered good practice to include a comment highlighting the fall-through where one would normally expect a break. See also Duff's device.