C Essentials 2 (Intermediate)

About the course

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.

Why C?

Whenever a code strongly associated with the operation of equipment is created, the C language proves its flexibility and adaptability. Network card drivers, graphics card software, operating systems and micro-controllers – these things can be found all around you, on your desk and in your car, in the kitchen and in the garage, simply everywhere intelligent electronics functions – you are sure to find the work of programmers who write in “C”. The heart of Linux is nearly 15 million lines of code in “C”. There is no better evidence for the language’s longevity.

The C language is the absolute essential for entry-level and software development jobs.

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

Channel: Edube Interactive

Sponsor: C++ Institute

Mode: Online self-study course

Cost: Free

Study Time: 42 hours (Suggested: 7 hours/week)

Language: English

Associated Certification: CLA – C Certified Associate Programmer (Exam CLA-11-03)

Enroll for free

Buy Exam Voucher

Associated courses

C Essentials 1


No pre-requisites ‒ the course is designed for absolute beginners.

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 2 (Intermediate) course is fully 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 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:

More information: CLA ‒ C Certified Associate Programmer