Chapter 21. C’s Dustier Corners
There be of them that have left a name behind them.
This chapter describes the few remaining features of C that have not been described in any of the previous chapters. It is titled C’s Dustier Corners because these statements are hardly ever used in real programming.
do/while
The do/while statement has the following syntax:
do {statement
statement
} while (expression
);
The program will loop, test the expression, and stop if the expression is false (0).
Note
This construct will always execute at least once.
do/while is not frequently used in C. Most programmers prefer to use a while/break combination.
goto
Every sample program in this book was coded without using a single goto. In actual practice, I find a goto statement useful about once every other year.
For those rare times that a goto is necessary, the correct syntax is:
gotolabel
;
where label is a statement label. Statement labels follow the same naming convention as variable names. Labeling a statement is done as follows:
label
:statement
For example:
for (x = 0; x < X_LIMIT; x++) { for (y = 0; y < Y_LIMIT; y++) { if (data[x][y] == 0) goto found; } } printf("Not found\n"); exit(8);
found:
printf("Found at (%d,%d)\n", x, y);
Question 21-1: Why does Example 21-1 not print an error message when an incorrect command is entered?
Hint: We put this in the goto section. (Click here for the answer Section 21.6)
#include <stdio.h> #include <stdlib.h> int main() { char line[10]; while ...
Get Practical C Programming, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.