<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<item>
  <id>00046118</id>
  <dt>b</dt>
  <an>00046118</an>
  <augroup>
    <au>Kernighan, Brian W.</au>
    <au>Ritchie, Dennis M.</au>
  </augroup>
  <ti>The C programming language, second edition, ANSI C. (Programmieren in C. Mit dem C-Reference Manual in deutscher Sprache. 2. Ausgabe ANSI C. \"Ubers. A. T. Schreiner; Ernst Janich.)</ti>
  <so>PC professionell. M\"unchen etc.: Hanser; London: Prentice-Hall Internat. XV, 279 p. DM 56.00 (1990).</so>
  <py>1990</py>
  <pu>M\"unchen etc.: Hanser; London: Prentice-Hall Internat.</pu>
  <lagroup>
    <la>DE</la>
  </lagroup>
  <ccgroup>
  </ccgroup>
  <utgroup>
    <ut>programming in C</ut>
    <ut>C Language</ut>
    <ut>UNIX</ut>
    <ut>ANSI C</ut>
  </utgroup>
  <cigroup>
  </cigroup>
  <ligroup>
  </ligroup>
  <abgroup>
    <ab>The C Language has a close connection to the UNIX Operating System. Originally it was designed and implemented on a DEC PDP-11 by Dennis Ritchie. Consequently C is independent from a special Operating System, there are implementations for MS-DOS, DEC-VMS and so on. C has two predecessors, BCPL (Richards) and B (Thompson). Both languages are ``typeless''. This means, that programmers only ``see'' one single Data Type, the Machine Word. In contrary to BCPL and B the C Language has Types. For example You'll find Characters, Integers, Floats, Pointers (Adresses), Arrays and Structures as basic Data Types. Sometimes C is called a ``Low Level Language'', situated only a small step ``over'' an Assembly Language. But in C there are Control Structures like ``while'' to support Structured Programming. Therefore in practice the usage of C is not restricted to System Programming. Originally in 1977 Prentice-Hall published ``The C Programming Language'' by Kernighan and Ritchie, the famous ``K/R'' and in 1983 Hanser followed with a German version. I remember the disappointment of a lot of my students awaiting this German version. The translation kept the English method in building composite nouns (``... mit Hilfe des Zeiger Wertes erreichen.''. S. 28), which led to partly unreadable and misleading German texts. In 1988 with respect to a standardization by ANSI a Second Edition appeared by Prentice-Hall, followed by a German version (Hanser 1990). On 279 pages the book contains a complete description of the ANSI C Standard. Starting with Data Types and Control Structures the reader learns how to build ``Functions'' using ``Blocks''. One (important) chapter concentrates on Pointers and Arrays and on the relationship between these two concepts. Appendix A presents an overview showing the differences between the old C and ANSI. Most striking is the new form to define Function Prototypes, which allows Type Checking at Compile Time. The reader is led to the ``Art of C Programming'' by a lot of useful examples and in a didactical clear manner. The German version now follows the rules of German syntax in building composite nouns and some misprints $(*pa+i$ in the first edition versus $*(pa+i)$, which is the correct form, on page 96 of the second one) have been removed. But the translation of ``words'' to ``Worte'' (``Der Worte sind genug gewechselt.'') instead of ``W\"orter'' is still disturbing. Surely K/R will stay the main reference to the C Language.</ab>
    <rv>W.Brecht</rv>
  </abgroup>
</item>