RTD Training & Development

C Programming

Call us on +44 (0)1225 66 72 72 or send us a message

C Programming

5 days hands-on £2,425+VAT

This course can be delivered over the web

Next scheduled date:
Monday April 29th, 2024 Enrol Now!

Covers the whole of the C language from scratch. May be used as an introduction to programming.


Data Types & Operators

  • Constants
  • Variable names
  • Data types & sizes
  • Declarations
  • Operators & expressions

Control Flow

  • Statements & blocks
  • Decision statements
  • Loops
  • 'Break' & 'Continue' statements

Functions & variables

  • Declaring functions
  • Using functions
  • Scope and lifetime of variables
  • Initialisation

Arrays & structures

  • Declaring & accessing arrays
  • Passing arrays to functions
  • Multi-dimensional arrays
  • Declaring & accessing structures


  • Pointers & addresses
  • Pointers to structures
  • Pointers as function arguments
  • Pointers & arrays
  • Address arithmetic
  • Pointers to pointers
  • Command-line arguments
  • Dynamic memory allocation
  • Function pointers
  • Pointers vs. multi-dimensional arrays


  • Formatted output
  • Formatted input
  • File handling
  • Error handling

Program Structure

  • Using multiple source files
  • Scope & visibility
  • Typedefs
  • Complex declarations
  • Linking

The C Pre-processor

  • Declaring constants
  • Using header files
  • Conditional compilation
  • Declaring & using macros

Low-level operations

  • Type conversion
  • Bitwise operations
  • Bit fields
  • Declaring & accessing unions
  • Variable-length argument lists


C is the most portable programming language available. C programs utilising standard library functions can be compiled and run on Unix, Windows, Linux and many other platforms.

C is not object-oriented, but it combines the features of modern, high-level structured languages with a small size and the flexibility of low-level access that usually requires assembly-language programming.

This course covers all the features of ANSI C and much of the standard library. Participants acquire hands-on experience of the language by working through a wide selection of exercises.


On successful completion of this course, participants will be able to:

  • Write, compile and execute ANSI C programs
  • Apply C's high-level structured programming features
  • Use arrays, pointers, structures and unions
  • Use dynamic memory allocation and other low-level techniques
  • Access platform-provided services via the standard library


This course is aimed primarily at applications programmers and system programmers and engineers who are interested in C program development. Analysts and managers will also find it useful.


No prior knowledge is assumed on this course. It is suitable for beginners and experienced programmers alike.

share buttons
share on twitter
share on linkedin
share on facebook
share by email