HOME >  Seminars in GEORGIA > Savannah > C Programming

Seminar C Programming Seminar

Presented by Hands-On Technology Transfer

Hands On Technology Transfer Computer Training

Bring this seminar on-site to your facility for groups of 10 or more.

This hands on C programming course provides a comprehensive introduction to the ANSI C language, emphasizing portability and structured design

Course Description


This hands on C programming course provides a comprehensive introduction to the ANSI C language, emphasizing portability and structured design. Students are introduced to all major language elements including fundamental data types, flow control, and standard function libraries. Thorough treatment is given to the topics of string and character manipulation, dynamic memory allocation, standard I/O, macro definition, and the C runtime library. The course explains the use of aggregate structures, unions, and pointers early on so the students can practice extensively in the hands on labs. Structured programming constructs and varargs functions are also covered.

Emphasis is given to the processing of command line arguments and environment variables so students will be able to write flexible, user-friendly programs. The course also includes coverage of portability tips drawn from experienced programmers working in production environments. Comprehensive hands on exercises are performed throughout training each day to reinforce key concepts.

Prerequisites

Understanding of fundamental programming concepts.

Overview of C
  • Operating System Independence
  • Design Goals and Capabilities
  • Flavors of C
Compiler Directives and the C Preprocessor
  • Compile-Time Directives
  • Use of typedef
  • C Preprocessor Syntax
Fundamental Data Types, Storage Classes, and Scope
  • Fundamental Data Types and Qualifiers
  • Constants and Strings
  • Storage Classes
  • Scope and Block Structure
  • Scope and Data Hiding
  • Data Initialization
Pointers and Dynamic Allocation
  • Advantages of Pointers
  • User of Pointers
  • Pointer and Address Arithmetic
  • Dynamic Storage Allocation
  • sizeof
  • Double Indirection
Macros
  • Functions versus Inlining
  • Purpose of Macros
  • Use of Macros
    • Making Code More Readable
    • Auto Adjustment of Compile Time Values
    • Conditional Compilation
    • Making Code Portable
    • Simplifying Complex Access Calculations
  • Advanced Micro Design Tips
  • Using Macros to Help Write Portable Programs
  • When to Use a Macro instead of a Function
  • Using Macros for Debugging
Arrays
  • Purpose of Arrays
  • Declaring an Array
  • Initializing an Array
  • Addressing Elements
  • Stepping Through an Array
  • Variable Size Arrays
  • Arrays of Pointers
  • Arrays of Strings
  • Passing an Array to a Function
  • Dynamic Memory Allocation
  • Multidimensional Arrays
Basic Formatted I/O
  • Standard I/O Library
  • Character Set Encoding
  • Standard Input and Output
  • Character I/O Functions
  • Formatted I/O Functions
  • String Constants
Program Debugging
  • Problem Analysis
  • Instrumenting with printif
  • Instrumenting with ctrace
  • The Purpose of Debuggers
  • How Not to Use Debuggers
  • Symbolic Debuggers
Operators and Expressions
  • Arithmetic, Logical, and Bit Operators
  • Precedence and Associativity
  • Assignment and Casting
  • The Conditional Operator
Flow Control Constructs
  • Conditional Constructs: if, switch
  • Looping Constructs: while, do, for
  • Programming Style
Functions (Subroutines)
  • Purpose of Functions
  • Functions versus Inlining
  • Automatic Variables
  • The Argument Stack
  • Passing By Value
  • Passing By Reference
  • Declaring External Functions
  • Function Prototyping
  • ANSI Prototyping
  • The _NO_PROTO Compiler Symbol
  • Varargs Functions
  • Passing a Function as an Argument
  • Designing Functions for Reusability
  • Calling a Function from Another Language
  • Returning a Dynamically Allocated Value Using Double Indirection
  • Casting the Return Value of a Function
  • Recursion and Reentrancy
Structures
  • Purpose of Structures
  • Defining and Declaring Structures
  • Accessing Members
  • Pointers to Structures
  • Dynamic Memory Allocation
  • Passing a Structure to a Function
    • As a Pointer
    • Passing the Actual Structure
Advanced Structures and Unions
  • Nested Structures
  • Arrays of Structures
  • Bit Fields
  • Unions
  • Linked Lists
C Runtime Library Standard Functions
  • Character I/O
  • Unformatted File I/O
  • Formatted File I/O
  • Math Functions
  • Miscellaneous Functions
Strings and Character Manipulation
  • Strings as Character Arrays
  • String Library Functions
  • Reading and Writing Strings
Accessing Command Line Arguments and Environment Symbols
  • argc and argv
  • Parsing Command Line Options
  • Accessing the Environment Array
Structured Programming
  • Structuring Code for Quality, Reliability, Maintainability
  • Designing for Modularity and Reusability
Advanced Programming Consideration
  • Writing Portable Code
  • Use of Macros
  • ANSI C Limits
  • Feature Test Macros
  • Client/Server Design
  • Performance Considerations

 

More Seminar Information

Hands-On Technology Transfer
Hands On Technology Transfer Computer Training

Summary

This hands on C programming course provides a comprehensive introduction to the ANSI C language, emphasizing portability and structured design

Delivery Method

Seminar Seminar

Also Available As

On-Site Training On-Site Training

Who Should Attend

Computer Industry Professionals

 
Search similar training
Email this page
Print this document
 

Dates and Locations

This date could not be found.


see all dates/locations

 

Frequently Asked
Questions

Payment Options
Bill Me/Invoice
Credit Card

Register
Online
Fax Form

Availability
Seats currently available. Book now before the class is full.

Other Information
Seminar

All Date/Location Information

Arkansas (Find training in Arkansas)
7/12/2021-7/11/2021 in Little Rock, AR         Find a seminar in Little Rock AR

Arizona (Find training in Arizona)
6/28/2021-6/27/2021 in Phoenix, AZ         Find a seminar in Phoenix AZ
6/28/2021-6/27/2021 in Tucson, AZ         Find a seminar in Tucson AZ

California (Find training in California)
6/28/2021-6/27/2021 in Bakersfield, CA         Find a seminar in Bakersfield CA
6/28/2021-6/27/2021 in Fresno, CA         Find a seminar in Fresno CA
6/28/2021-6/27/2021 in Irvine, CA         Find a seminar in Irvine CA
6/28/2021-6/27/2021 in Los Angeles, CA         Find a seminar in Los Angeles CA
6/28/2021-6/27/2021 in Modesto, CA         Find a seminar in Modesto CA
6/28/2021-6/27/2021 in Oakland, CA         Find a seminar in Oakland CA
6/28/2021-6/27/2021 in Riverside, CA         Find a seminar in Riverside CA
6/28/2021-6/27/2021 in Sacramento, CA         Find a seminar in Sacramento CA
6/28/2021-6/27/2021 in San Bernardino, CA         Find a seminar in San Bernardino CA
6/28/2021-6/27/2021 in San Diego, CA         Find a seminar in San Diego CA
6/28/2021-6/27/2021 in San Francisco, CA         Find a seminar in San Francisco CA
6/28/2021-6/27/2021 in San Jose, CA         Find a seminar in San Jose CA
6/28/2021-6/27/2021 in Santa Clarita, CA         Find a seminar in Santa Clarita CA
6/28/2021-6/27/2021 in Santa Monica, CA         Find a seminar in Santa Monica CA
6/28/2021-6/27/2021 in Temecula, CA         Find a seminar in Temecula CA

Colorado (Find training in Colorado)
6/21/2021-6/20/2021 in Denver, CO         Find a seminar in Denver CO

Iowa (Find training in Iowa)
6/14/2021-6/13/2021 in Cedar Rapids, IA         Find a seminar in Cedar Rapids IA
6/14/2021-6/13/2021 in Des Moines, IA         Find a seminar in Des Moines IA

Idaho (Find training in Idaho)
6/21/2021-6/20/2021 in Boise, ID         Find a seminar in Boise ID

Illinois (Find training in Illinois)
6/14/2021-6/13/2021 in Chicago, IL         Find a seminar in Chicago IL
6/14/2021-6/13/2021 in Schaumburg, IL         Find a seminar in Schaumburg IL
6/14/2021-6/13/2021 in Springfield, IL         Find a seminar in Springfield IL

Indiana (Find training in Indiana)
6/14/2021-6/13/2021 in Indianapolis, IN         Find a seminar in Indianapolis IN

Kansas (Find training in Kansas)
7/12/2021-7/11/2021 in Wichita, KS         Find a seminar in Wichita KS

Louisiana (Find training in Louisiana)
7/12/2021-7/11/2021 in Shreveport, LA         Find a seminar in Shreveport LA

Michigan (Find training in Michigan)
6/14/2021-6/13/2021 in Detroit, MI         Find a seminar in Detroit MI
6/14/2021-6/13/2021 in Lansing, MI         Find a seminar in Lansing MI

Minnesota (Find training in Minnesota)
6/14/2021-6/13/2021 in Minneapolis, MN         Find a seminar in Minneapolis MN

Missouri (Find training in Missouri)
6/14/2021-6/13/2021 in Kansas City, MO         Find a seminar in Kansas City MO
6/14/2021-6/13/2021 in Springfield, MO         Find a seminar in Springfield MO
6/14/2021-6/13/2021 in St Charles, MO         Find a seminar in St Charles MO

Nebraska (Find training in Nebraska)
6/14/2021-6/13/2021 in Omaha, NE         Find a seminar in Omaha NE

New Mexico (Find training in New Mexico)
6/28/2021-6/27/2021 in Albuquerque, NM         Find a seminar in Albuquerque NM
6/28/2021-6/27/2021 in Las Cruces, NM         Find a seminar in Las Cruces NM

Nevada (Find training in Nevada)
6/28/2021-6/27/2021 in Las Vegas, NV         Find a seminar in Las Vegas NV

Oklahoma (Find training in Oklahoma)
7/12/2021-7/11/2021 in Oklahoma City, OK         Find a seminar in Oklahoma City OK
7/12/2021-7/11/2021 in Tulsa, OK         Find a seminar in Tulsa OK

Oregon (Find training in Oregon)
6/21/2021-6/20/2021 in Portland, OR         Find a seminar in Portland OR

Texas (Find training in Texas)
7/12/2021-7/11/2021 in Austin, TX         Find a seminar in Austin TX
7/12/2021-7/11/2021 in Corpus Christi, TX         Find a seminar in Corpus Christi TX
7/12/2021-7/11/2021 in Dallas, TX         Find a seminar in Dallas TX
6/28/2021-6/27/2021 in El Paso, TX         Find a seminar in El Paso TX
7/12/2021-7/11/2021 in Ft Worth, TX         Find a seminar in Ft Worth TX
7/12/2021-7/11/2021 in Houston, TX         Find a seminar in Houston TX
7/12/2021-7/11/2021 in San Antonio, TX         Find a seminar in San Antonio TX

Utah (Find training in Utah)
6/21/2021-6/20/2021 in Salt Lake City, UT         Find a seminar in Salt Lake City UT

Washington (Find training in Washington)
6/21/2021-6/20/2021 in Seattle, WA         Find a seminar in Seattle WA
6/21/2021-6/20/2021 in Spokane, WA         Find a seminar in Spokane WA

Wisconsin (Find training in Wisconsin)
6/14/2021-6/13/2021 in Milwaukee, WI         Find a seminar in Milwaukee WI