Advanced C Programming

[hmenu id=3]

Course Description

C is one of the most widely used languages for systems software and workstation application programming, largely due to its power and flexibility. This course will provide you a highly effective, structured approach to learning ASCI Standard C revision C90 for experienced programmers who have had some exposure to similar languages such as Java or C#.

Programming skills will be enhanced, as delegates will be able to use the powerful features of C to best effect building on the skill gathered from their previous experience in similar high-level languages. The QA’s C programming Course for Experienced Programmers is outstanding because of its emphasis on writing style, pitfalls to avoid and techniques to use that make the code clear, concise and maintainable. It is design to accelerate through the foundations of C programming as appropriate to the skill level.

In addition to the lecture material, there are graded practical sessions that cover each of the major areas of C. There are also optional exercises for further study after the course. Delegates may take away worked solutions, together with some small sample demonstration programs.

Delegates must have professional programming skills and a good working knowledge of a C-like language together with the usual skills in a block-structured language, such as Basic/Visual Basic, Pascal/Modula 2, FORTRAN, Algol or PL/1, and be familiar with a programming environment.

}

40 Hours

Backend Technologies

h

Certificate: No

Price: contact us for more details

Don’t Be Shy

Leave your details and one of our customer service representatives will respond to you as soon as possible

Course Outline

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

An Overview of C

History and evolution of C; Key characteristics of C


Writing a Simple Program

Program structure; Data and code statements; C software development of life cycle.


Data Types, Operators and Expressions

Scalar types; Variables and constants; Storage considerations; Initializing variables; Standard arithmetic operators; Increment, decrement, assignment and relational operators; Automatic and programmer-controlled type conversion; Introduction to evaluation points


Control Flow

Boolean expressions; While, Do and for loops; Looping style considerations; If, Else and Switch statements; other statements affecting flow of control; Decision-making style considerations


Functions and Program Structure

Inter-function communication; Function prototypes, calls and definitions; Scope and storage classes, stack; recursion


Structured Data Types

Arrays, strings, structures and unions; Nested data structures.


Pointers

The concept of indirection; Pointers and address arithmetic; Pointers and functions; pointers and const.

Pointers and Data Structures

Pointers and arrays; Pointers and structures; Linked Lists; Overview of Queue and Tree Structures.


Preprocessor

Tokens and macros; Include files; Conditional compilation, File Guarding; operators.


Input and Output

Using run-time routines; Character and formatted I/O; File I/O; Block I/O


Further Data Types, Pointers and Error Handling

Bit manipulation; User-defined types: Function Pointers, asserts and errno.


Working with Larger Programs

C and modular programming; Linkage; Cs standard library


The Way Ahead

Further C information sources; Support after this course