This intensive training will enable you to acquire operational knowhow of the C language. You will study the mechanisms of the C language and their application through numbers of case studies. At the end of the session you will be able to write robust and portable C programs.
Training at your location, our location or remotely
Ref. LGC
5d - 35h
Would you like to transpose this course—without changes—for your company?
A la carte training
Do you want a training course tailored to the needs of your company and its teams? Your training will be built to measure by our experts!
This intensive training will enable you to acquire operational knowhow of the C language. You will study the mechanisms of the C language and their application through numbers of case studies. At the end of the session you will be able to write robust and portable C programs.
Intended audience
Engineers and programers wishing to acquire a complete and operational training on C language.
Prerequisites
Basic programing knowledge.
Course schedule
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.
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.
Pointers et arrays : initialization of pointers and arrays. Multidimensional arrays.
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.
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.
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
Practical details
Hands-on work
A Personal Computer with UNIX or Windows is available for each participant to immediately apply the new concepts.
Customer reviews
4,5 / 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.
Dates and locations
Select your location or opt for the remote class then choose your date.
Remote class
No session at the moment, we invite you to consult the schedule of distance classes.