Software engineering in C

From MaRDI portal





The authors consistently apply, as design principle of the book, the formula ``A good program not only works, but is easy to read and maintain. The first four chapters present the necessary elements of a C program, the hierarchy of C data types and their corresponding declarations, the C shape of the classical programming schemes. Chapters 5-9 illustrate the C operators and expressions, and the specific problems of data structures, including pointers: self-reference, passing, initializing, assigning and returning, linked lists, function prototypes and function argument passing. Chapter 10 is concerned with the main problems of C preprocessor: macro processing, additional C source files, conditional compilation, and the American National Standard Institute (ANSI) features: using a macro name in its own definition, the (five) built-in macros. Chapter 11 describes the standard I/O library according to the ANSI standard, which combines the Kernighan and Ritchie (K \& R) standard with the UNIX I/O library. Chapter 12 offers a detailed analysis of a ``good programming style, emphasizing both its good and poor elements. Instructive examples illustrate the computer-aided software engineering that facilitates efficient software production, maintaining and debugging. A significant part of the book constitute the six appendices: (A) The ANSI runtime library; (B) The syntax of ANSI C; (C) The implementation limits according to the ANSI standard; (D) The differences between the ANSI and K \& R standards; (E) Reserved names; (F) A C interpreter listing. Conclusions. The book has (at least) two incontestable qualities: (1) A special (possibly, one of the best) text design to learn the good programming style: among the graphic devices must be mentioned the boxes describing the specific structures of both standards, the ANSI extensions, the ``bug allerts boxes to warn against the common errors. (2) It is the first book clearly containing the ANSI standard and its specific differences with the other approaches, mainly the K \& R standard. For higher sophisticated programming techniques can be consulted and other (already) classical texts, but this one is indispensable for the moment, let they be beginners or advanced programmers in C language.












This page was built for publication: Software engineering in C

Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q4039723)