Advanced C Programming Training

Course #:WA1079

Advanced C Programming Training

This course fills the gap between an introductory course in C and more advanced application programming. Students write many programs, concentrating on data structures and file I/O.

Topics

  • The C Development Environment
  • Basic and Derived Data Types in C
  • Function: Calling, Passing, and Returning Values
  • Standard I/O
  • Low Level File I/O
  • Memory Allocation with malloc and calloc
  • Memory Organization and the Scope of Variables
  • Data Structures - Linked Lists

Audience

C programmers who need to advance their coding skills.

Prerequisites

C Programming

Duration

Three days.

Outline of Advanced C Programming Training

  1. The C Development Environment

  • The cc(1) Command
  • Include Files
  • Libraries

  2. Basic and Derived Data Types in C  

  • Simple C data types
  • Integral data types
  • Floating point types
  • Derived data types
  • Array data types - single and multi-dimensional
  • Structure data types
  • Simple pointer types
  • Pointers to structures/multiple pointers
  • Pointers to functions
  • The const qualifier
  • Bit operators
  • Using typedef

  3. Function: Calling, Passing, and Returning Values  

  • Anatomy of a function
  • Parameter passing - pass by value
  • Parameter passing - pass by reference

  4. Standard I/O  

  • Standard I/O streams
  • File access
  • Formatted I/O
  • String I/O
  • File positioning operations
  • Block I/O

  5. Low Level File I/O  

  • Standard I/O vs system I/O
  • File access
  • Direct I/O
  • File Positioning
  • Error Handling

  6. Memory Allocation with malloc and calloc  

  • Dynamic memory allocation overview
  • malloc(), calloc()
  • realloc(), free()
  • Structure Pointers
  • Array of pointers to structures

  7. Memory Organization and the Scope of Variables 

  • Command line arguments (argc, argv)
  • The memory layout of a C Program
  • The stack segment
  • The heap segment

  8. Data Structures - Linked Lists  

  • Array limitations
  • Linked lists
  • List operations - formation
  • List operations - delete
We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.