About this course

C Essentials ‒ Part 2 (Intermediate)

This course is the second in a 2-course series that will prepare you for the CLA - C Certified Associate Programmer certification exam available at Pearson VUE.

The course picks up where C Essentials - Part 1 leaves off. Its main goal is to teach you the skills related to the more advanced aspects of C programming language syntax and semantics, memory management, structures, working with files and streams, as well as with the most commonly used library functions and the usage of the pre-processor and declarations.

The course is recommended for aspiring developers who are interested in pursuing careers connected with Software Development, Networking Programming, and Operating System Development.

You will learn

  • Learn how to create, use, and re-use functions
  • Learn how to represent records with structures
  • Learn how to connect to the world by working with files and streams
  • Learn how to handle errors
  • Learn about the preprocessor and directives
  • Learn about storage classes and complex declarations
  • Write your own C programs and prepare for the CLA certification

Course Syllabus

structures; declaring, using and initializing structures; pointers to structures and arrays of structures; the basics of recursive data collections; pointers, arrays and structures as function parameters; function result and the return statement; void as a parameter, pointer and result; parameterizing the main function; external functions and the extern declarator; header files and their role.

files vs. streams; header files needed for stream operations; the FILE structure; opening and closing streams; open modes; the errno variable, reading and writing to/from a stream; predefined streams: stdinstdout, and stderr; stream manipulation: the fgetc(), fputc(), fgets(), and fputs() functions; raw input/output: the fread(), and fwrite() functions.

preprocessor; #include - how to make use of a header file; #define - simple and parameterized macros; the #undef directive; predefined preprocessor symbols; macrooperators: # and ##; conditional compilation: the #if and #ifdef directives; avoiding multiple compilations of the same header files; scopes of declarations; storage classes; user-defined types; pointers to functions; analyzing and creating complex declarations.


The C Essentials Part 2 (Intermediate) course is aligned with the CLA C Certified Associate Programmer certification. The Part 1 and Part 2 provide a full-spectrum preparation for the CLA exam.

CLA - C Certified Associate Programmer (C Programming Language Certified Associate) is a professional certificate that measures your ability to accomplish coding tasks related to the basics of programming in the C programming language, as well as fundamental programming techniques, customs and vocabulary, including the most common library functions and the usage of the preprocessor.

A test candidate should demonstrate sufficient knowledge of the following concepts:

  • the universal concepts of computer programming and developer tools;
  • the syntax and semantics of the C language as well as data types offered by the language;
  • writing programs using standard language infrastructure regardless of the hardware or software platform.

More information: CLA - C Certified Associate Programmer

  • Channel: Edube Interactive
  • Sponsor: C++ Institute
  • Mode: Online self-study course
  • Level: Intermediate
  • Cost: Free
  • Study Time: 42 hours (Suggested: 7 hours/week)
  • Language: English
  • Associated Certification: CLA – C Certified Associate Programmer (Exam CLA-11-02 & CLA-11-03)
Buy Exam Voucher

No pre-requisites.

Recommended: Completing the C Essentials - Part 1 (Basics) course prior to starting this one.