C Development Fundamentals

Paths

C Development Fundamentals

Authors: Giovanni Dicanio, Brice Wilson, Hugo Barona, Zachary Bennett, Philip Agaba, Jaya Bodkhey, Alexandru Dima, Dror Helper

C is a very powerful, widely used structured programming language that is machine-independent and extensively used to write various applications, Operating Systems like Windows... Read more

Some of the material covered in this path are:

  • The history of the C language and it's key capabilities
  • How to work with input/output
  • Vasic data types and variables
  • Decision making logic in C
  • C data types
  • Managing Data and Memory Allocation in C
  • Using Structures in C
  • Using a C Preprocessor (CPP)

Pre-requisites

No previous programming experience is required before beginning this path.

C Language Fundamentals

C is a very powerful, widely used structured programming language that is machine-independent and extensively used to write various applications, Operating Systems like Windows, and many other complex programs like Oracle database, Git, Python interpreter, and more.

As the primary language used in many scientific programming situations and forms (or is the basis for), the core of the modern languages Java and C++, and one of the most widely used languages in the world today, learning this foundational language will be beneficial whether you are an experienced programmer or just getting started.

This path is designed for the developer with no previous programming experience. The intent is to cover the specifics of the C language. The courses in this path focus on the C language as it pertains to programming. It is not designed to include machine-level interfaces written with C. These courses have been designed as sequential in the path but may also be used as stand-alone where a learner already familiar with C can view a specific course as a reference or refresher.

Getting Started with the C Language

by Giovanni Dicanio

Dec 10, 2020 / 2h 26m

2h 26m

Start Course
Description

In this course, “Getting Started with the C Language,” you’ll learn how to write quality C code and start developing applications using the C language. First, you’ll explore the basic structure of a C console application, learn the role of the C compiler, and how to build your C code from both the command line and using an IDE (VS Code). Next, you’ll discover how to define variables in C and how to perform basic I/O. Then, you’ll learn the syntax for basic decision making in C, and how to write loops using while, do/while and for statements. Finally, you’ll learn how to write your own functions in C and how to call them, including parameter passing by value vs. by reference (using pointers. When you’re finished with this course, you’ll have the skills and knowledge to be productive with the C language and to start developing beginning applications in C, and you’ll be ready to study more advanced aspects of the language with follow-up courses.

Table of contents
  1. Course Overview
  2. Writing Your First C Program: "Hello World"
  3. Creating Variables and Basic I/O
  4. Working with Strings
  5. Making Decisions
  6. Iterating
  7. Reusing Code with Functions

C Language: The Big Picture

by Brice Wilson

Aug 19, 2020 / 39m

39m

Start Course
Description

Context is important when approaching a language that's been around as long as C. The syntax may look familiar because it has inspired the creation of so many other languages over the years, but its unique capabilities and the problems it solves are quite different from those derivative languages. In this course, C Language: The Big Picture, you'll learn the history of the language, the problems it solves, and why you should consider learning it. First, you'll explore why C was created, how it has evolved and why it remains relevant. Next, you'll discover use cases for this powerful language and why it is often a better choice than many more modern options. Finally, you'll get a quick introduction to the structure of a C program and the tools you need to begin writing and running your own C code. When you're finished with this course, you'll have the skills and knowledge needed to decide if C is the right language for your project, dive deeper into the syntax of the language, and begin writing your first programs.

Table of contents
  1. Course Overview
  2. The Evolution and Influence of C
  3. Using C in Modern Computing
  4. Writing C Code

Variables and Data Types in C

by Hugo Barona

Nov 5, 2020 / 2h 3m

2h 3m

Start Course
Description

Are you learning about coding and using C language or need to refresh your knowledge about variables and data types in C? In this course, Variables and Data Types in C, you’ll learn how to use variables and data types to manage and manipulate data inside your applications, built using the C programming language. First, you’ll explore the data types available to store each type of data and when to use each of those types. Next, you’ll discover how to work with variables to store and manage the data, what constants and literals are, and how to use them. Finally, you’ll learn how to use operators in C to manipulate your data and perform different types of calculations. When you’re finished with this course, you’ll have the skills and knowledge of variables and data types in C needed to manage and manipulate data inside your applications.

Table of contents
  1. Course Overview
  2. Introduction to C
  3. Understanding Data Types in C
  4. Working with Variables in C
  5. Using Storage Classes in C
  6. Using Operators to Manipulate Data in C

Managing Data and Memory Allocation in C

by Zachary Bennett

Dec 31, 2020 / 2h 1m

2h 1m

Start Course
Description

There are far too many programs and applications today that use too much memory. These computer programs take advantage of the relatively large amount of memory available on the average computer today. In this course, Managing Data and Memory Allocation in C, you will learn how to dynamically allocate memory in a safe and efficient manner. First, you’ll explore the different memory segments available to a C program and you’ll learn how memory is dynamically allocated from the heap segment. Next, you’ll discover the different memory functions available for use within the C standard library and how to use pointers along with these functions and arrays in order to dynamically allocate and free memory at runtime. Finally, you’ll learn how to allocate memory for data structures in your application. You will create your own fixed-block memory pool manager. When you’re finished with this course, you’ll have the skills and knowledge of memory management within C needed to create safe and memory-efficient programs and applications.

Table of contents
  1. Course Overview
  2. Dynamically Allocating Memory Using C
  3. Managing Memory with Pointers
  4. Managing Memory with Arrays
  5. Managing Memory with Structures

Using Structures in C

by Philip Agaba

Oct 9, 2020 / 29m

29m

Start Course
Description

If you want to learn how to program networks, operating systems, or even embedded systems, you can do a great deal worse than C. In this course, Using Structures in C, you’ll learn to work with user-defined data types and structures. First, you’ll explore how to build structures. Next, you’ll discover how to nest Structures, use Structures in functions, as well as use Structures with Pointers. Finally, you’ll learn how to use Bit Fields to manage the use of memory within Structures. When you’re finished with this course, you’ll have the skills and knowledge on how to put Structures in C to good (and proper) use.

Table of contents
  1. Course Overview
  2. Understanding C Structures
  3. Using Pointers with Structures
  4. Managing Memory with Bit Fields

Coming Soon

Working with Functions in C

Coming Soon

by Zachary Bennett

Using a C Preprocessor (CPP)

by Jaya Bodkhey

Dec 29, 2020 / 1h 25m

1h 25m

Start Course
Description

When it comes to learning a programming language, the focus is often on the different programming elements and syntax rules of a programming language. While it is important to learn these aspects, you shouldn’t be missing the most important piece that is responsible for performing all the background activities in order to translate your program written in a high-level language to a language that your machine is able to understand. In this course, Using a C Preprocessor (CPP), you’ll learn to use C preprocessor directives in your C program. First, you’ll explore various phases of the compilation process of a C program and what role does the C preprocessor play in that. Next, you’ll discover various preprocessor directives defined in the C library as well as those which are defined specific to different compiler flavors. Finally, you’ll learn how to use these preprocessor directives effectively in your C programs and applications. When you’re finished with this course, you’ll have the skills and knowledge of using the C preprocessor needed to understand the preprocessing phase during the compilation process and to use the features and power rendered by the preprocessor directives in your real time applications.

Table of contents
  1. Course Overview
  2. # Is Important
  3. Translating a C Program
  4. Understanding C Preprocessor Directives
  5. Working with Macros
  6. Understanding Compiler Specific Preprocessor
  7. Course Summary

Working with Files in C

by Alexandru Dima

Oct 14, 2020 / 1h 3m

1h 3m

Start Course
Description

At some stage in your career, you may have to deal with legacy C applications that run against your existing files. In this course, Working with Files in C, you’ll learn how to perform file I/O. First, you’ll explore how to open and read a file. Next, you’ll discover how to create and write to a file. Finally, you’ll learn about file security levels and authorization. When you’re finished with this course, you’ll have the skills and knowledge of file I/O needed to work with files in the C programming language.

Table of contents
  1. Course Overview
  2. File I/O Functions
  3. Opening and Reading Files
  4. Creating and Writing Files
  5. Additional File Operations

Unit Testing C Code in CLion

by Dror Helper

Dec 4, 2020 / 2h 16m

2h 16m

Start Course
Description

Anyone who has ever written unit tests knows that it’s not always a trivial task, especially when trying to test existing code. In this course, Unit Testing C Code in CLion, you’ll learn to write, run, debug, and analyze unit tests. First, you’ll explore deciding how and what to test. Next, you’ll discover refactoring code using unit tests for better readability and maintainability. Finally, you’ll learn how to understand the results and investigate issues when things go wrong. When you’re finished with this course, you’ll have the skills and knowledge of CLion and unit testing needed to create better, cleaner, and more maintainable C code.

Table of contents
  1. Course Overview
  2. Introducing Unit Testing and CLion
  3. Automated Testing in CLion
  4. Organizing Your Tests
  5. Writing and Running Unit Tests
Offer Code *
Email * First name * Last name *
Company
Title
Phone
Country *

* Required field

Opt in for the latest promotions and events. You may unsubscribe at any time. Privacy Policy

By providing my phone number to Pluralsight and toggling this feature on, I agree and acknowledge that Pluralsight may use that number to contact me for marketing purposes, including using autodialed or pre-recorded calls and text messages. I understand that consent is not required as a condition of purchase from Pluralsight.

By activating this benefit, you agree to abide by Pluralsight's terms of use and privacy policy.

I agree, activate benefit