C

COURSE OUTLINES

  • Chapter 1: Getting Started
    • What is C?
    • Background
    • Sample Program
    • Components of a C Program
    • Examples
    • Data Types
    • Variables
    • Naming Conventions for C Variables
    • Printing and Initializing Variables
    • Array Examples
    • Compiling and Executing a C Program
  • Chapter 2: Functions and Operators
    • Examples of C Functions
    • Functions
    • sum Invoked from main
    • Invoking Functions
    • Elementary Operators
    • The operator= Operators
    • Operators
    • The Conditional Operator
    • Increment and Decrement Examples
    • Increment and Decrement Operators
  • Chapter 3: Control Flow Constructs
    • Examples of Expressions
    • if
    • if else
    • while
    • for
    • Endless Loops
    • do while
    • break and continue
    • switch
    • else if
  • Chapter 4: The C Preprocessor
    • #define
    • Macros
    • #include
    • Conditional Compilation
    • #ifdef
    • #ifndef
  • Chapter 5: Simple I/O
    • Character I/O
    • End of File
    • Simple I/O Examples
    • Simple I/O Redirection
    • I/O with Character Arrays
  • Chapter 6: More on Functions
    • General
    • Function Declarations
    • Returning a Value or Not
    • Function Prototypes
    • Arguments and Parameters
    • Organization of C Source Files
    • Extended Example
    • The getline Function
    • The strcmp Function
    • The check Function
    • The atoi Function
    • The average Function
    • Summary
  • Chapter 7: Bit Manipulation
    • Defining the Problem Space
    • A Programming Example
    • Bit Wise Operators
    • Bit Manipulation Functions
    • Circular Shifts
  • Chapter 8: Strings
    • Fundamental Concepts
    • Aggregate Operations
    • String Functions
  • Chapter 9: Higher Dimensional Arrays
    • Array Dimensions
    • An Array as an Argument to a Function
    • String Arrays
  • Chapter 10: Separate Compilation
    • Compiling Over Several Files
    • Function Scope
    • File Scope
    • Program Scope
    • Local static
    • register and extern
    • Object Files
    • Libraries
    • The C Loader
    • Header Files
  • Chapter 11: Pointers (Part 1)
    • Fundamental Concepts
    • Pointer Operators and Operations
    • Changing an Argument with a Function Call
    • Pointer Arithmetic
    • Array Traversal
    • String Functions with Pointers
    • Pointer Difference
    • Prototypes for String Parameters
    • Relationship Between an Array and a Pointer
    • The Pointer Notation *p++
  • Chapter 12: Pointers (Part 2)
    • Dynamic Storage Allocation - malloc
    • Functions Returning a Pointer
    • Initialization of Pointers
    • gets - a Function Returning a Pointer
    • An Array of Character Pointers
    • Two Dimensional Arrays vs. Array of Pointers
    • Command Line Arguments
    • Pointers to Pointers
    • Practice with Pointers
    • Function Pointers
  • Chapter 13: Structures
    • Fundamental Concepts
    • Describing a Structure
    • Creating Structures
    • Operations on Structures
    • Functions Returning Structures
    • Passing Structures to Functions
    • Pointers to Structures
    • Array of Structures
    • Functions Returning a Pointer to a Structure
  • Chapter 14: Structure Related Items
    • typedef - New Name for an Existing Type
    • Bit Fields
    • unions
    • Non-Homogeneous Arrays
    • Enumerations
  • Chapter 15: File I/O
    • System Calls vs. Library Calls
    • Opening Disk Files
    • fopen
    • I/O Library Functions
    • Copying a File
    • Character Input vs. Line Input
    • scanf
    • printf
    • fclose
    • Servicing Errors - errno.h
    • feof
  • Chapter 16: Information About Files
    • The stat Function
    • File Existence
    • Telling Time - time and ctime
    • Telling Time – localtime
  • Chapter 17: I/O With Structures
    • A Database Application
    • The menu Function
    • The fwrite Function
    • The create_db Function
    • The fread Function
    • The print_db Function
    • fseek
    • The retrieve_db Function
    • fflush and ftell
  • Chapter 18: Useful Library Functions
    • strstr
    • strchr, strrchr
    • system
    • strtok
    • strspn, strcspn
    • Math Functions
    • Character Testing Functions
    • exit and atexit
    • signal
    • memcpy and memset
    • qsort
    • Binary Search - bsearch
  • Appendix A: C Language Programming
    • Important Header Files
    • printf Formats
    • C Reserved Words
    • Conversion
    • Precedence Chart