Free On-line Dictionary of Computing

fall through

<programming >

(The American misspelling "fall thru" is also common) 1. 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. 2. To fail a test that would have passed control to a subroutine or some other distant portion of code. 3. 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 (colour)
 {
 case GREEN:
 do_green();
 break;
 case PINK:
 do_pink();
 /* FALL THROUGH */
 case RED:
 do_red();
 break;
 default:
 do_blue();
 break;
 }
The effect of the above code is to "do_green()" when colour is "GREEN", "do_red()" when colour is "RED", "do_blue()" on any other colour other than "PINK", and (and this is the important part) "do_pink()" and then "do_red()" when colour 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.

Nearby terms:

fall forwardfall overfall through fall thruFALSEFancyIndexing

Try this search on Wikipedia, Wiktionary, Google, OneLook.



Loading

Quantcast

AltStyle によって変換されたページ (->オリジナル) /