Discover Classes. Earn Rewards.

C Programming is unfortunately unavailable

Thankfully we have 1 other Intro to Programming Class for you to choose from. Check our top choice below or see all classes for more options.

Web Development with HTML & CSS

Noble Desktop @ 185 Madison Ave, New York, NY & Virtually Online

Learn the coding languages used to create webpages in this hands-on HTML & CSS web development course. Develop websites from scratch, style content, and make pages responsive. Get the skills to create and upload live websites.

(372) All levels 18 and older
$975

3 sessions

Gift it!
See all Intro to Programming classes NYC

C Programming

  • Beginner
  • 18 and older
  • $2,795
  • (Exact location to be announced), New York, NY
  • 40 hours over 5 sessions

Start Dates (0)

  • $2,795
  • NY - Manhattan @ (Exact location to be announced), New York, NY 00000
  • 40 hours over 5 sessions
Showing 10 of 0

Class Description

Description

What you'll learn in this intro to programming class:

All HOTT courses are available face-to-face, remote-live, on-demand or on-site at your facility

You will learn all major programming language elements including fundamental data types, flow control, and standard function libraries.


Students Will Learn: 

  • Data Types, Storage Classes, & Scope 
  • Pointers, Arrays, and Dynamic Allocation 
  • Compiler Directives, Preprocessor, and Macros 
  • Operators and Expressions 
  • Functions and C Runtime Library 
  • Structures and Unions

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 integrated throughout to reinforce learning and develop real competency.


Course Prerequisites: Understanding of fundamental programming concepts.



Course Overview

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 Operator
  • Double Indirection

Macros

  • Functions vs. 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 vs. 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

Note: Classes do not have fixed location. Prior to each class they examine the geographical location of the enrolled students and then select a venue that will provide most convenient overall access for the students. Classes are held in hotel conference rooms and exact location is determined 2 weeks prior to the course date.

Refund Policy

Tuition includes all course materials. Students may withdraw before the second day of class to receive a 100% refund, provided course materials are returned to the instructor. Prorated refunds may be granted for withdrawals after the first day.

Cancellations and Changes: There are no cancellation fees.

Attendance Requirements: Students must attend each day of a course and successfully complete hands on exercises in order to receive a certificate of completion. If a student wishes to retake any portion of a class that he or she completes, the student may do so within 12 months at no extra cost.

Intended Audience: Hands On Technology Transfer, Inc., provides IT training designed for technology professionals who wish to quickly upgrade their computer skills. In most states, the employer bears all training costs.

Reviews of Classes at Hands On Technology Transfer, Inc. (7)

Similar Classes

Benefits of Booking Through CourseHorse

  • Booking is safe. When you book with us your details are protected by a secure connection.
  • Lowest price guaranteed. Classes on CourseHorse are never marked up.
  • This class will earn you 27950 points. Points give you money off your next class!

Questions & Answers (0)

Get quick answers from CourseHorse and past students.

Hands On Technology Transfer, Inc.

HOTT delivers instructor-led technical training across the United States, Canada and the United Kingdom. Whether you attend in person, remote-live or on-demand, our classroom-based training philosophy zeroes in on your ability to work more productively and with higher quality results after training....

Read more about Hands On Technology Transfer, Inc.

CourseHorse Approved

This school has been carefully vetted by CourseHorse and is a verified NYC educator.

Hands On Technology Transfer, Inc.

Hands On Technology Transfer, Inc.

All classes at this location

Google Map

Give This Course as a Gift Card

  • Thousands of classes
  • No expiration
  • Unique and memorable gifts for any occasion
  • Personalized
  • Explore a passion, gain a new skill, discover a new hobby, engage in a memorable experience
  • Instant delivery
  • Lock in a price with the Inflation Buster Gift Card Price Adjuster™

Buy a Gift Card

Book this Class as a Group Event

Booking this class for a group? Find great private group events

Or see all Coding Group Events

Explore group events and team building activities ranging from cooking, art, escape rooms, trivia, and more.

CourseHorse Gift Cards

  • Creative & unique gift for any occasion
  • Thousands of classes & experiences
  • No expiration date
  • Instant e-delivery (or choose a date)
  • Add a personalized message
  • Lock in a price with the Inflation Buster Gift Card Price Adjuster™
Buy a Gift Card
gift card with the CourseHorse logo gift card with the CourseHorse logo
Loading...