Train together, save more! 10% off individual registration, 20% off for pairs.
Log in

Or create your account

You have just added to your selection
Your cart is empty, See our trainings

Description

This training will allow you to assimilate the new features introduced by the C11 ISO/IEC 9899:2011 standard. You will discover multithreading management, generic function selection as well as many other functions from the standard library offering safe operating interfaces.

Who is this training for ?

For whom ?

C developers wishing to know the new features defined by the C11 standard.

Prerequisites

Good knowledge of the C language. Practical programming experience with this language is strongly recommended.

Training objectives

  • Understand the new features of C11
  • Develop applications using standard C11
  • threadsImprove the reliability of an application using the new standard C11 functions
  • Training program

    • The advent of C11
      • - The different C standards ANSI, C99, C11.
      • - New features of C11 and objectives of this ISO standard.
      • - Compatibility with old versions.
      • - Development tools (compilers, IDE).
      • - Practical work Setting up a C11 compilation chain.
    • Reminders on C99 progress

      - n'as pas encore du programme

    • Le multithreading
      • - The concept of thread.
      • - Lightweight versus heavyweight process.
      • - Thread life cycle (execution).
      • - Sharing data between threads.
      • - Synchronization, appointments, semaphores.
      • - Proposals for other languages: Java, C#, C++.
    • Use C11 threads
      • - Understand the concepts present in the standard and the differences/similarities with Pthreads.
      • - Create a thread, make it executable.
      • - Define pauses, wait for the end of execution.
      • - Use mutexes.
      • - Implement a producer-consumer.
      • - Practical work Use C11 threads.
    • Atomic objects
      • - Understand the issues of data sharing between threads and the concept of atomic objects.
      • - Define atomic data.
      • - Use atomic operations.
      • - Non-atomic data management.
      • - Practical work Carry out data sharing between threads.
    • Operational safety
      • - The removal of gets() by gets_s().
      • - The fopen_s() function.
      • - Other functions: strcat_s(), strcpy_s().
      • - Practical work Manipulation of functions.
    • Miscellaneous improvements
      • - Structure alignment ().
      • - - Unicode string management (char16_t...).
      • - - Support for anonymous structures and unions.
      • - - Generic selection of functions within macros (_Generic) - Handling of complex numbers.
      • - - The new mode of fopen().
      • - - Static assertions.
      • - Practical work
      • - Implementation of improvements.
    • 709
    • 14 h

    Submit your review

    Translated By Google Translate