Training Course
Locations | Schools | Online Courses | MBA | Submit Course | Post Request | Students | Jobs | House Rental


Jobs & Resumes

House Rental

Back | Home

Training Course:

C Programming for Experienced Programmers

School/Trainer:

QA Ltd.
Aberdeen, Birmingham, Bristol, Edinburgh, Exeter, Glasgow, Leeds, London, Manchester, Slough, United Kingdom

Course Format: Classroom | E-learning | Virtual Class | Online | On-site | Blended | Self-paced

Course Description:

'' C Programming for Experienced Programmers (Premium Series)

This course is designed to teach ANSI Standard C to experienced programmers who are familiar with either C++ or Java or have already done some basic C programming or taken an introductory C training course. This is not an introductory course, but it will cover the main C topics at an accelerated pace before getting into the more advanced features of the C language and its usage. It will describe some of the key differences in C compared with C++ and Java to put existing programming knowledge into context.

The course explores concepts and syntax through lectures, discussion and hands-on lab exercises.

The course is based on ANSI standard C, revision C90, although a number of extensions in the 1994 addition will be covered where relevant. The course teaches operating system independent C except for Appendix B which will be covered depending on the background and requirements of the delegates. The labs will be run on Windows and will utilise the GCC compiler to provide an environment which will be familiar to delegates coming from a Windows or Unix/Linux background.



Prerequisites
Practical experience of programming in C++ or Java or a solid introductory overview of C.



Course outline
1. Language overview and differences/similarities with Java and C++

DATA TYPES, VARIABLES AND OPERATORS Integers, characters, floating point; Declaring variables; Arithmetic operators; Logical operators; Bitwise operators; Precedence and associativity; Casting and type conversions
CONTROL FLOW if/else statements; switch statements; do and while loops; The for loop; goto; break and continue
FUNCTIONS Declaring functions; Function prototypes; Using header files; Passing arguments; Return values; Compile/link model
ARRAYS Array representation in memory; Array declaration and access; Multi-dimensional arrays
POINTERS What are pointers? Creating pointers; Assigning and dereferencing pointers
STRINGS Strings as character arrays; Initializing strings
USER-DEFINED TYPES Enums; Structs; Declaring and using structs; Passing structs to functions; Typedef
I/O printf; Format specifiers; scanf
THE PREPROCESSOR FUNDAMENTALS Preprocessor directives; Defining and using constants; Conditional compilation; Preprocessor macros
2. Pointers and Arrays

Pointer arithmetic
void pointers
Idiomatic use of pointers
Pointers-to-pointers
Arrays and pointers
Strings and pointers
Passing arrays to functions
Dynamic memory allocation
Proper use of malloc and free �Other allocations functions (calloc, realloc) �allocating arrays and structures
3. Command-line arguments

4. Custom types

Using typedef with structs
Pointers and structs
Self-referential structs
Bitfields
Unions
5. I/O

Opening files
Reading and writing files
Binary and text files
Random access I/O
Directory operations
6. The Standard Library

What is in the library
What isn’t in the library : comparison with Unix API comparison with Windows API
String manipulation using the str functions
Math functions
Date and time functions
Other Standard C functions
Writing variadic functions
Other functionality : on-local goto
7. Program organization

Program layout : text / data / stack / heap
Preprocessor including the null directive, proper use of header files, minimizing recompilation, Conditional inclusion guards, #define and #undef, Using macros properly, Stringifying and token pasting, Predefined symbols, other directives (#line, #pragma, #error)
Storage classes �auto, register, extern and static
Linkage �internal, external and none
Qualifiers �volatile and const
Atomic operations
Alignment
Sequence points
8. Error handling and status reporting

Using assert()
errno
perror()
Returning values from programs
9. Function pointers

Declaring and using function pointers
Using lookup tables
10. Implementing data structures

Linked lists
Queues
Hashing
Stack
Binary Tree
Sorting
Searching
Using recursive functions
Appendix A: Writing Portable Programs

Data Representation
Characters and Strings
Limits to Observe
Expression Evaluation
Library Issues ...''

Elements of this syllabus are subject to change.

Please go to the school's official website for training price and schedule:
http://www.qa.com/

Phone:0844 871 2080

School Address:

TEL: 0844 871 2080
E-mail us: info@qa.com

Jobs & Resumes: Aberdeen, Birmingham, Bristol, Edinburgh, Exeter, Glasgow, Leeds, London, Manchester, Slough
Houses & Roommates: Aberdeen, Birmingham, Bristol, Edinburgh, Exeter, Glasgow, Leeds, London, Manchester, Slough
Travel Agencies: Birmingham, Bristol, Edinburgh, Leeds, London, Manchester,

Search other schools for C Programming for Experienced Programmers training resources.




Other training courses offered by QA Ltd.:

Service Oriented Architecture
Software Architecture Foundation
Systems Design & Implementation Techniques
Systems Development Essentials
Systems Modelling Techniques (Structured)
Systems Modelling Techniques (UML)
Advanced C
Advanced C++ Development Techniques
C Programming
C++ for C Programmers
C++ for non-C Programmers
COM Programming with C++
Introduction to C Programming
Designing for Cisco Internetwork Solutions
Implementing Cisco MPLS
Administering Cisco CallManager
Administering Cisco Unified Communications Manager
Building Cisco Multilayer Switched Networks


Notice: The course description on this page was captured from the Internet as historical reference or submitted by visitors. It was archived statically and not updated from day to day.
 


Tips:
Schools can use this unlimited free web marketing service by submitting their course descriptions and school introductions. Two outbound links will be granted to each posting.



Finding any course, anywhere to learn...
Worldwide training course directory, linking for free
United States - United Kingdom - Australia - Canada - India - SpanishASKEDU.net  © 2003-2009