Next-Level C Programming (with Advanced C Topics)

Geared for experienced C programmers, this course provides participants with additional insights into the language. Working in a hands-on learning environment, students will explore the use of pointers, arrays, and structures in C. Students will exit the course able to write readable, portable, and efficient intermediate level and beyond C Language Programs.

Retail Price: $2,795.00

Next Date: Request Date

Course Days: 5


Request a Date

Request Custom Course


Course Objectives

This ‘skills-centric’ course is about 50% hands-on lab and 50% lecture designed to train attendees in core C development skills, coupling the most current, effective techniques with the soundest coding practices. Students will explore a series of progressively advanced topics, where each topic consists of lecture, group discussion, practical hands-on lab exercises, and lab review. Working in a hands-on learning environment led by our expert practitioner, students will explore:

  • Expression, Objects, and LValues
  • Data Types, Constants, and Variables
  • Scope and Storage Class
  • Operators and Operands
  • Arrays and Pointers
  • Structures and Pointers
  • Functions and Pointers
  • Dynamic memory allocation and Linked Lists

 

Course Prerequisites

This course is geared for experienced C Language Applications Programmers, and Systems Programmers. Attendees should have at least three (3) months of C Language Programming experience.


Course Agenda

 

Expression, Objects, and LValues

  • Evaluating Expressions
  • Expression Side Effects
  • Objects and Data Types
  • Lvalues and Constants

Data Types, Constants, and Variables

  • Basic Data Types
  • Constant Data Types
  • Variable Data Types
  • Derived Data Types
  • Data Type Renaming – typedef

Scope and Storage Class

  • Internal Scope
  • External Scope
  • Extending Scope
  • Storage Class
  • Automatic
  • External
  • Static
  • Register

Operators and Operands

  • Operator Attributes
  • Operator Action
  • Number of Operands
  • Precedence Level
  • Associativity Direction
  • Operand Attributes
  • Data Type Restrictions
  • Lvalue Requirements
  • Expression Evaluation Result
  • Data Type
  • Value
  • Lvalue
  • Side Effects

Arrays and Pointers

  • Multi Dimensional Arrays
  • Pointer - Array Relationship
  • Pointer Arithmetic
  • Valid Pointer Operations
  • Multiple Pointers to an Array
  • Array Subscripting vs. Pointers
  • Arrays of Pointers
  • Multiple Levels of Indirection

Structures and Pointers

  • Structure Review
  • Structure Definition
  • Structure Declaration
  • Structure Holes
  • Nested Structures
  • Arrays of Structures
  • Pointers to Structures
  • Structures Containing Pointers
  • Structure Variations
  • Unions
  • Bit Fields
  • Enumerations

Functions and Pointers

  • Function Declaration
  • Old Style
  • Function Prototypes (ANSI)
  • Function Arguments and Parameters
  • Basic Data Types
  • Pointers to Basic Data Types
  • Single and Multi-Dimensional Arrays
  • Structures and Pointers to Structures
  • Function Return Types
  • void Data Type Functions
  • Basic Data Type Functions
  • Pointer to Data Type Functions
  • Structure Data Type Functions
  • Pointers to Functions
  • Declaring Pointers to Functions
  • Pointers to Functions as Formal Parameter
  • Arrays of Pointers to Functions
  • Functions Returning Pointers to Functions

Dynamic memory allocation and Linked Lists

  • Dynamic Memory Allocation
  • Dynamic Memory Allocation Concepts
  • Library Function: malloc
  • Library Function: free
  • Linked Lists
  • Linked List Concepts
  • Linear Linked List
  • Bi-directional Linked List
  • Linked List Conclusions


Sorry! It looks like we haven’t updated our dates for the class you selected yet. There’s a quick way to find out. Contact us at 502.265.3057 or email info@training4it.com


Request a Date