Course : The C Programming Language

Practical course - 5d - 35h00 - Ref. LGC
Price : 2610 € E.T.

The C Programming Language






INTER
IN-HOUSE
CUSTOM

In person or remote class
Available in English on request

Ref. LGC
  5d - 35h00
2610 € E.T.







Practical details
Hands-on work
A Personal Computer with UNIX or Windows is available for each participant to immediately apply the new concepts.

Course schedule

1
Introduction to UNIX and C programing

  • Introduction to C programing. History, the pre-processor, the compiler, the linker and the loader.
  • Tracing tools, debugger, profilers and indexing tools.
  • C language structure. The basic syntax. First program using printf (hello world).
  • The main function. comments. Reserved keywords.
  • The C preprocessor. Including headers. Macros and conditional compilation.
  • Macros with variable numbers of arguments.

2
Basic C components and types

  • Basic language components. C types, sizeof, cast. Assigning a value.
  • Pointers and strings. Incomplete types.
  • Formatted Input Output. Using printf and scanf to write to the screen and read from keyboard. Escape sequences.
  • Arithmetic and logic. Arithmetic, bitwise, logical and Floating point operators.
  • Compound assignment operators.

3
Flow control

  • Selection statements : if/else and switch.
  • iteration statements : for, while, do/while
  • jump statements : goto, labels, label addressing. Continue and break statements.

4
Storage classes

  • Storage classes : auto, static, extern, register.
  • Storage qualifiers : volatile, const, restrict.
  • Pointers et arrays : initialization of pointers and arrays. Multidimensional arrays.

5
C functions

  • Function declarations. Argument passing. return directive.
  • Scope of the variables. Function pointers.
  • Declaring function prototypes.
  • Advanced C function programing. Inline function tag. Nested functions. Variable number of arguments.

6
User defined types

  • Structures definition. Initialization of structures.
  • Accessing a structure members. Accessing a structure members with a pointer.
  • Definition of unions. initialization of unions.
  • Accessing a union members. Accessing a union members with a pointer.

7
The standard C library

  • The strings library functions. Signal, raise, kill are used to send or receive signals.
  • C library propose a standard interface for file I/O.
  • Buffered file access, formatted and unformatted I/O. Constants and variables.
  • Non local goto. Using setjmp and longjmp with signals.
  • Handling errors : errno, stderr and perror .
  • Security issues. Buffer overflows vulnerabilities. Threading problems and race conditions


Customer reviews
4,2 / 5
Customer reviews are based on end-of-course evaluations. The score is calculated from all evaluations within the past year. Only reviews with a textual comment are displayed.
ALEXANDRE Q.
23/03/26
5 / 5

La formation rentre bien dans les détails grâce aux nombreux exemples de code, aux nombreux exercices de mise en pratique par ordre de difficulté, et aux corrections d’exercices disponibles. La mise à disposition de ressources supplémentaires sur le Moodle ou par le formateur en direct est très appréciable.
MATTHIEU L.
23/03/26
5 / 5

RAS
BENOIT B.
03/11/25
5 / 5

Course appreciated.



Publication date : 08/15/2024


Dates and locations
Select your location or opt for the remote class then choose your date.
Remote class

Last places available
Guaranteed date, in person or remotely
Guaranteed session

REMOTE CLASS
2026 : 15 June, 15 June, 28 Sep., 28 Sep., 7 Dec., 7 Dec.

PARIS LA DÉFENSE
2026 : 15 June, 28 Sep., 7 Dec.