C: Data Structures, Pointers, and File Systems

C: Data Structures, Pointers, and File Systems

2h 58mIntermediate2019-05-01

Authors

Dan Gookin

Dan Gookin

Creator, Teacher, and Technology Writer with 20+ years of experience

Course details

C is a foundational language for a variety of other programming languages, as well as an up-and-coming language for embedded systems. If you’re interested in broadening your knowledge of C, then this course is for you. Join instructor Dan Gookin as he takes a deep dive into data structures, pointers, and other key topics in this essential programming language. Dan digs into a variety of programming concepts such as arrays, structures, characters, and strings. He also goes over pointers—variables that hold a memory location—explaining how to use pointers to manipulate data, do pointer math, and more. He wraps up the course by sharing a few special techniques, including how to solve math puzzles with C.

Learning objectives
Working with arrays
Building a structure
Creating an array of structures
Testing characters
Working with strings in C
Using pointers to manipulate data
Manipulating files
Using command-line arguments
Working with time functions

Skills covered

CData EngineeringEssential TrainingProgramming LanguagesData ScienceOpen SourceSoftware Development

Concepts

Introduction

  • Learn data structures and pointers in C
  • Using the exercise files
  • Configuring the IDE

Arrays and Structures

  • Understanding arrays
  • Working with arrays
  • Modifying arrays
  • Passing an array to a function
  • Working multi-dimensional arrays
  • Building a structure
  • Nesting structures
  • Creating an array of structures
  • Sending a structure to a function
  • Understanding a union
  • Challenge - Presidents of the U.S.A.
  • Solution - Presidents of the U.S.A.

Characters and Strings

  • Using single character I O
  • Testing characters
  • Working with character conversions
  • Understanding strings in C
  • Fetching string input
  • Sending string output
  • Reviewing printf() placeholders
  • Using printf() placeholders
  • Exploring string functions
  • Manipulating strings
  • Avoiding string problems
  • Challenge - String I O and manipulation
  • Solution - String I O and manipulation

Pointers

  • Understanding pointers
  • Using pointers to manipulate data
  • Doing pointer math
  • Comparing arrays and pointers
  • Allocating storage
  • Working with a pointer array
  • Using pointers in structures
  • Passing pointers to functions
  • Returning pointers
  • Challenge - Create a pointer array
  • Solution - Create a pointer array

Files and the Operating System

  • Reading from a file
  • Writing to a file
  • Working with raw data
  • Using random file access
  • Manipulating files
  • Exploring the path
  • Reading a directory
  • Getting file information
  • Using command line arguments
  • Calling the operating system
  • Challenge - Read and store filenames
  • Solution - Read and store filenames

The Interesting and Extraordinary

  • Solving math puzzles
  • Creating random numbers
  • Working with time functions
  • Sorting data
  • Debugging your code
  • Using a debugger
  • Writing your own header file
  • Mixing multiple source code files
  • Challenge - Lotto simulation
  • Solution - Lotto simulation

Conclusion

  • Next steps
80,000 Toman