c2
Connect on:
  • Home
  • Course Centre
    • Project Management >
      • Professional Project Management
      • Project Management Essentials
      • Managing Project Requirements
      • Scheduling & Cost Control Project Managers
      • Project Leadership, Management & Communication
      • Risk Management for Project Managers
      • Negotiation Skills for Project Managers
      • Managing Remote Project Teams
      • Project Quality Management
      • Project Procurement Management
      • Earned Value Management
      • Professional Project Management - Best Practice
      • Professional Project Management - Exam Preparation
      • PRINCE2® Foundation & Practitioner
      • PRINCE2® Overview
    • Agile Project Management Courses >
      • Agile Project Management
      • Using Scrum in organistations
      • Certified ScrumMaster
    • Java >
      • Core Java Programming
      • Advanced Java Programming
      • Java Programming & XML
      • Java Networking
      • Java Virtual Machine (JVM)
      • Java & Java EE Open Source Testing Tools
    • Java Enterprise Edition (EE) >
      • Enterprise Java with Hibernate and Spring
      • Developing Java Web Applications
      • Java & Java EE Open Source Testing Tools
      • Spring Framework Development
    • C/C++ Programming >
      • C Programming Techniques
      • C++ Programming Fundamentals
      • C++ for C Programmers
      • Advanced C++ Programming
      • C++ & STL Design Patterns
      • Object Oriented C++ for Real-time Applications
    • Unix/Linux >
      • Linux Fundamentals
      • Linux Administration Essentials
    • Windows Server Courses >
      • Installing and Configuring Windows Server 2012
      • Windows Server 2008 - Server Administration
      • Configuring Windows Server 2008 Active Directory
    • .NET Courses >
      • ASP.NET MVC 4.0
    • Perl Programming Courses >
      • Perl Programming
      • Advanced Perl Programming
    • Python Programming Courses >
      • Python Programming
    • Database Courses >
      • MySQL for Developers
    • CompTIA >
      • CompTIA Network+
    • Scripting >
      • JavaScript - Introduction
      • JavaScript - Advanced
    • Data Analysis & Design >
      • Data Analysis & Design - Introduction
      • Data Analysis & Design with UML
    • Microsoft Office Courses >
      • Microsoft Word - Introduction
      • Microsoft Word - Intermediate
      • Microsoft Word - Advanced
      • Microsoft Access - Introduction
      • Microsoft Access - Intermediate
      • Microsoft Access - Advanced
      • Microsoft Excel - Introduction
      • Microsoft Excel - Intermediate
      • Microsoft Excel - Advanced
      • Microsoft Excel - Dashboards
      • Microsoft Excel - Macros
      • Microsoft Excel - Expert
      • Microsoft PowerPoint - Level 1
      • Microsoft PowerPoint - Level 2
      • Microsoft PowerPoint - Advanced
      • Microsoft Outlook - Introduction
      • Microsoft Outlook - To Manage Your Time Efficiently
      • Microsoft Project - Introduction
      • Microsoft Project - Advanced
      • Microsoft Publisher - Introduction
      • Microsoft Visio - Introduction
    • Solaris >
      • Solaris 10 Administration
  • Testimonials
  • About
  • Contact

C Programming Techniques

Course Description

C is one of the most widely used programming languages due to its great flexibility. C is a structured programming language that supports high-level and low level programming. Therefore, C is used in many different areas including business, finance, operating systems and game applications. A number of other languages are based on C, such as C++ and Java, and therefore this course will prepare you to learn these languages also. This course aims to teach the ANSI C programming language. It assumes previous knowledge about computer programming.

Course Duration

3 days

Course Objectives

At the end of this course, the student should:

• Learn and practice the principles of programming
• Learn the characteristics of the C language and its applications
• Be familiar with various data types supported by the language
• Learn how to build structured programs using functions
• Learn and use abstraction mechanisms using structures, arrays and unions
• Understand and use the different storage classes of variables
• Learn how to write highly flexible programs using pointers and addresses
• Use string manipulation functions in C to handle character strings
• Use file input and output mechanisms in C programs 
• Understand and use advanced features such as dynamic memory allocation and pointers to functions

Course Content

Review of C Programming
Review of  C data types; the const keyword; C Language Identifiers; Constant Literal Values; Expressions and Statements; Introduction to Program Input and Output; Operators  

Functions
Function Definition; Function Prototype; Calling a Function; Iterative Constructs; the for Statement; the while
Statement; The do … while Statement

Arrays
Referencing Array Elements; Manipulation of an Array; Multidimensional Arrays; Array Initialisation;

Structures and Storage Classes
Structures; Structure Tags and Typedefs; Arrays of Structures; Unions; Storage Classes; C Program 
Memory Configuration; C Variable Storage Classes

Pointers and Addresses
The "address of" Operator; Pointer Declarations; Indirection Operator; Pointers and Arrays; Pointer Arithmetic; Pointers and Functions

Strings and Characters
Reading and Writing Strings: Scanf(), Printf(); String.H; Copying And Joining Strings; Comparing Strings and Determining String Length; Finding Characters Within Strings

Input and Output Using Files
File Pointers—FILE *; Opening a File; Writing and Reading Values to/from Files; Closing a File

Advanced Topics
Dynamic Memory Allocation; Memory Allocation Functions; Pointers to Functions; Binary Files; Conditional Compilation

Who should attend?

This course is designed for people who have some programming experience in C and wish to do more with the language

Pre-requisites

Students should be familiar with the C programming language.
Powered by Create your own unique website with customizable templates.