home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
- Introduction to the C Tutorial
-
-
-
- C IS USUALLY FIRST
- ____________________________________________________________
-
- The programming language C was originally developed by Dennis
- Ritchie of Bell Laboratories and was designed to run on a
- PDP-11 with a UNIX operating system. Although it was
- originally intended to run under UNIX, there has been a great
- interest in running it under the MS-DOS operating system on
- the IBM PC and compatibles. It is an excellent language for
- this environment because of the simplicity of expression, the
- compactness of the code, and the wide range of applicability.
- Also, due to the simplicity and ease of writing a C compiler,
- it is usually the first high level language available on any
- new computer, including microcomputers, minicomputers, and
- mainframes.
-
- C is not a good beginning language because it is somewhat
- cryptic in nature. It allows the programmer a wide range of
- operations from high level down to a very low level,
- approaching the level of assembly language. There seems to
- be no limit to the flexibility available. One experienced C
- programmer made the statement, "You can program anything in
- C", and the statement is well supported by my own experience
- with the language. Along with the resulting freedom however,
- you take on a great deal of responsibility because it is very
- easy to write a program that destroys itself due to the silly
- little errors that a good Pascal compiler will flag and call
- a fatal error. In C, you are very much on your own as you
- will soon find.
-
-
-
- I ASSUME YOU KNOW A LITTLE PROGRAMMING
- ____________________________________________________________
-
- Since C is not a beginners language, I will assume you are not
- a beginning programmer, and I will not attempt to bore you by
- defining a constant and a variable. You will be expected to
- know these basic concepts. You will, however, be expected to
- know nothing of the C programming language. I will begin with
- the most basic concepts of C and take you up to the highest
- level of C programming including the usually intimidating
- concepts of pointers, structures, and dynamic allocation. To
- fully understand these concepts, it will take a good bit of
- time and work on your part because they not particularly easy
- to grasp, but they are very powerful tools. Enough said about
- that, you will see their power when we get there, just don't
- allow yourself to worry about them yet.
-
- Page I-1
-
- Introduction to the C Tutorial
-
- Programming in C is a tremendous asset in those areas where
- you may want to use Assembly Language but would rather keep
- it a "simple to write" and "easy to maintain" program. It has
- been said that a program written in C will pay a premium of
- a 20 to 50% increase in runtime because no high level language
- is as compact or as fast as Assembly Language. However, the
- time saved in coding can be tremendous, making it the most
- desirable language for many programming chores. In addition,
- since most programs spend 90 percent of their operating time
- in only 10 percent or less of the code, it is possible to
- write a program in C, then rewrite a small portion of the code
- in Assembly Language and approach the execution speed of the
- same program if it were written entirely in Assembly Language.
-
- Even though the C language enjoys a good record when programs
- are transported from one implementation to another, there are
- differences in compilers as you will find anytime you try to
- use another compiler. Most of the differences become apparent
- when you use nonstandard extensions such as calls to the DOS
- BIOS when using MS-DOS, but even these differences can be
- minimized by careful choice of programming means.
-
- Throughout this tutorial, every attempt will be made to
- indicate to you what constructs are available in every C
- compiler because they are part of the accepted standard of
- programming practice.
-
-
-
- WHAT IS THE ANSI-C STANDARD?
- ____________________________________________________________
-
- When it became evident that the C programming language was
- becoming a very popular programming language available on a
- wide range of computers, a group of concerned individuals met
- to propose a standard set of rules for the use of the C
- programming language. The group represented all sectors of
- the software industry and after many meetings, and many
- preliminary drafts, they finally wrote an acceptable standard
- for the C language. By the time you read this, it should be
- accepted by the American National Standards Institute (ANSI),
- and by the International Standards Organization (ISO). It is
- not forced upon any group or user, but since it is so widely
- accepted, it would be economical suicide for any compiler
- writer to refuse to conform to the standard.
-
-
-
- YOU MAY NEED A LITTLE HELP
- ____________________________________________________________
-
- Modern C compilers are very capable systems, but due to the
- tremendous versatility of a C compiler, it could be very
- difficult for you to learn how to use it effectively. If you
-
- Page I-2
-
- Introduction to the C Tutorial
-
- are a complete novice to programming, you will probably find
- the installation instructions somewhat confusing. You may be
- able to find a colleague or friend that is knowledgeable about
- computers to aid you in setting up your compiler for use.
-
- This tutorial cannot cover all aspects of programming in C,
- simply because there is too much to cover, but it will
- instruct you in all you need for the majority of your
- programming in C. You will receive instruction in all of the
- programming constructs in C, but what must be omitted are
- methods of programming since these can only be learned by
- experience. More importantly, it will teach you the
- vocabulary of C so that you can go on to more advanced
- techniques using the programming language C. A diligent
- effort on your part to study the material presented in this
- tutorial will result in a solid base of knowledge of the C
- programming language. You will then be able to intelligently
- read technical articles or other textbooks on C and greatly
- expand your knowledge of this modern and very popular
- programming language.
-
-
-
- HOW TO USE THIS TUTORIAL
- ____________________________________________________________
-
- This tutorial is written in such a way that the student should
- sit before his computer and study each example program by
- displaying it on the monitor and reading the text which
- corresponds to that program. Following his study of each
- program, he should then compile and execute it and observe the
- results of execution with his compiler. This enables the
- student to gain experience using his compiler while he is
- learning the C programming language. It is strongly
- recommended that the student study each example program in the
- given sequence then write the programs suggested at the end
- of each chapter in order to gain experience in writing C
- programs.
-
-
-
- THIS IS WRITTEN PRIMARILY FOR MS-DOS
- ____________________________________________________________
-
- This tutorial is written primarily for use on an IBM-PC or
- compatible computer but can be used with any ANSI standard
- compiler since it conforms so closely to the ANSI standard.
- In fact, a computer is not even required to study this
- material since the result of execution of each example program
- is given in comments at the end of each program.
-
-
-
-
-
- Page I-3
-
- Introduction to the C Tutorial
-
- RECOMMENDED READING AND REFERENCE MATERIAL
- ____________________________________________________________
-
- "The C Programming Language - Second Edition",
- Brian W. Kernigan & Dennis M. Ritchie, Prentiss-Hall, 1988
-
- This is the definitive text of the C programming language
- and is required reading for every serious C programmer.
- Although the first edition was terse and difficult to
- read, this edition is easier to read and extremely useful
- as both a learning resource and a reference guide.
-
-
- "C Programming Guide - 3rd Edition",
- Jack Purdum, Que Corporation, 1988
-
- This book is written for the beginner in C. It is very
- clearly written and makes no assumptions of any prior C
- experience.
-
-
-
- A SPECIAL NOTE FOR THE SHAREWARE VERSION
- ____________________________________________________________
-
- It is impossible to include the graphics diagrams in chapters
- 8 and 12 in a pure ASCII text. They are therefore omitted
- from this version of the tutorial. If you need these dia-
- grams, they can be purchased directly from Coronado Enter-
- prises along with your registration. See the READ.ME file on
- either diskette for more information.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page I-4