Node:Advantages of C,
Next:Questions for Chapter 1,
Previous:Introduction,
Up:Introduction
The advantages of C
C is one of a large number of high-level languages designed for
general-purpose programming, in other words, for writing anything
from small programs for personal amusement to complex industrial
applications.
C has many advantages:
- Before C, machine-language programmers criticized high-level languages
because, with their black box approach, they shielded the user from the
working details of the computer and all its facilities. C, however, was
designed to give access to any level of the computer down to raw machine
language, and because of this, it is perhaps the most flexible
high-level language.
- C has features that allow the programmer to organize programs in a
clear, easy, logical way. For example, C allows meaningful names for
variables without any loss of efficiency, yet it gives a complete
freedom of programming style, including flexible ways of making
decisions, and a set of flexible commands for performing tasks
repetitively (
for
, while
, do
).
- C is succinct. It permits the creation of tidy, compact programs. This
feature can be a mixed blessing, however, and the C programmer must
balance simplicity and readability.
- C allows commands that are invalid in other languages. This is no
defect, but a powerful freedom which, when used with caution, makes many
things possible. It does mean that there are concealed difficulties in
C, but if you write carefully and thoughtfully, you can create fast,
efficient programs.
- With C, you can use every resource your computer offers. C tries to link
closely with the local environment, providing facilities for gaining
access to common peripherals like disk drives and printers. When new
peripherals are invented, the GNU community quickly provides the ability
to program them in C as well. In fact, most of the GNU project is
written in C (as are many other operating systems).
For the reasons outlined above, C is the preeminent high-level language.
Clearly, no language can guarantee good programs, but C can provide a
framework in which it is easy to program well.