| Course Duration
Upon
completion of the course the delegate should be able to:
Write, maintain and debug C programs, use arrays, structures and
dynamic memory. Make effective use of the Standard Library, in
particular the file I/O.
Intended Audience
This course is designed for experienced programmers that need to write
or maintain C programs.
Prerequisites
It is assumed that anyone attending this course is experienced in a
block-structured language such as Pascal, modern variants of Basic,
Smalltalk, Ada etc. They should be familiar with concepts such as
functions or procedures, control flow, arrays, and structures or
records. Any prior knowledge of C is neither assumed nor required.
Course Format
The course is spread over a four-day period and comprises of
instructor-led presentations and practical hands-on exercises. The
practical sessions are structured to give the delegates the
opportunity to put into practice all of the language constructs
covered during the instructor-led sessions. The delegates will be able
to take away with them copies of all the code they have written, along
with sample solutions and demonstration code. |
|
Course Content
C Program Components
Basic program components; functions, statements, file inclusion, input
and output, keywords, variables, operators.
Data and Operators
Identifiers, fundamental data types and their operators, constants,
operator precedence, conversions, casting, scope.
Control Flow
Boolean operators, conditional selection, iteration.
Functions
Functional modularity, passing data in and out of functions, pass by
value and reference, member functions, optimization with inline.
Arrays
Defining arrays and access through subscripting. Passing arrays to
functions. Strings in C.
Structures
Data structures, aggregation, Enumerations.
The Preprocessor
Using the preprocessor to create symbolic constants and macros. Using
conditional compilation techniques.
Pointers
Concept of indirection, null pointers, using pointers with
functions and arrays, pointer arithmetic.
Pointers and Arrays
The relationship between pointers and arrays. Using pointer arithmetic
to index arrays.
Pointers and Structures
Using pointers with structures and introducing the structure pointer
operator. Passing structures to functions.
Dynamic Memory
Accessing the heap or freestore with malloc and free, creating dynamic
arrays.
File I/O
Working with the standard library file input and output routines.
The Standard Library
Introducing other features of the standard library. Sorting and
searching, printing and scanning strings, time and data handling,
international code.
Larger Programs
How to construct larger programs and handle the coupling between
modules.
Advanced Features
Overview of some advanced features; bit manipulation, unions |