The Complete C Programming Bootcamp

The Complete C Programming Bootcamp

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 160 lectures (25h 04m) | 7.77 GB

Master C programming in Visual Studio Code. Learn pointers, macro and low level data manipulation. Embedded ready.

Welcome to The Complete C Programming Bootcamp, the only course you need to become a skilled C developer. It doesn’t matter if you are an absolute beginner or come from technologies like python or javascript. Together we will walk the path that will make you a pro in a language that is the foundation of modern computer science.

C is the most natural language when you learn to think the way a computer thinks. By learning C, you connect with everything that happens under the hood in your system. C is the key to developing performance-critical solutions, and this course is the key to exploring every detail of this programming language.

With Byte Garage, you will learn everything you need to become a true professional. We don’t just scratch the surface. You will discover all the background, good practices, and things you need to pay special attention to with us.

This is a brand new course, coming from a brand new team. Here some topics you will learn:

  • Data Types and Variables
  • Operators
  • Control Flow
  • Functions
  • Debugging
  • Pointers
  • Arrays
  • Strings
  • Dynamic Memory Allocation
  • Structures
  • Unions
  • Preprocessor and Macros
  • File Input and Output
  • Modular Programming

This course is particularly suitable for:

  • complete beginners who want to learn programming in C
  • who want to learn programming closely with bare metal
  • who wants to work on the firmware of embedded systems and microcontrollers
  • who wants to work on high performance, high load, real-time software
  • programmers who come from high-level languages curious to find out what happens under the hood

What you’ll learn

  • Be able to create professional C programs with Visual Studio Code.
  • Take on many challenges to create a portfolio of C projects.
  • Master the use of pointers.
  • Understand macros and the preprocessor.
  • Be able to use C language to program firmware for embedded systems.
  • Master the best technology to develop performance-critical applications.
  • Work in system programming or in real-time programming.
  • Learn professional developer best practices.
Table of Contents

Kickstart Your C Programming Skills
1 What You Get With This Course
2 Welcome to the Course
3 Get Started With C Programming
4 Create A Decimal To Hex Converter
5 Printing to the Console in C
6 The Anatomy of a C Program
7 C Variables and Console Input
8 Convert To Hexadecimal
9 Top IDEs for C Programming

Setup Visual Studio Code
10 Setup and Installation Introduction
11 Setup Visual Studio Code On Windows
12 Setup Visual Studio Code On Mac
13 Setup Visual Studio Code On Linux

Let’s Start Using VS Code!
14 Let’s Start Using VS Code Introduction
15 Run Your First C Program
16 Errors And Warnings
17 Configuring Build Tasks
18 Using Workspace Templates
19 Working With VS Code

Data Types and Variables
20 Data Types and Variables Introduction
21 Variables and Constants
22 Numeral Systems
23 Integers
24 Floating Points
25 Characters
26 Booleans
27 Enum
28 Typedef
29 Challenge Spaceship Thrust
30 Challenge Review Spaceship Thrust
31 Challenge Bunch Of Constants
32 Challenge Review Bunch Of Constants

Operators
33 Operators Introduction
34 Arithmetic Operators
35 Increment and Decrement Operators
36 Relational Operators
37 Logical Operators
38 Bitwise Operators
39 Bitmasks
40 Bit Manipulation
41 Assignment Operators
42 The sizeof Operator
43 Casting and Implicit Conversions
44 Summary and Other Operators
45 Operators Precedence
46 Challenge Sphere
47 Challenge Review Sphere
48 Challenge Bit Selector
49 Challenge Review Bit Selector

Control Flow
50 Control Flow Introduction
51 If Else Statement
52 Challenge Even Odd
53 Challenge Review Even Odd
54 Switch Statement
55 Challenge Days of the Week
56 Challenge Review Days of the Week
57 While Loop
58 Challenge Minimum Power Of 2
59 Challenge Review Minimum Power Of 2
60 For Loop
61 Challenge Sigma Drawing
62 Challenge Review Sigma Drawing
63 Break and Continue
64 Challenge Planetary Alignment
65 Challenge Review Planetary Alignment
66 Goto
67 Challenge Prime Numbers
68 Challenge Review Prime Numbers

Functions
69 Functions Introductions
70 How Functions Work
71 Creating Functions
72 Function Calls
73 Scope Rules
74 Challenge Prime Numbers Improved
75 Challenge Review Prime Numbers Improved

Debugging
76 Debugging Introduction
77 Improve Your Code With Debugging
78 Common Mistakes and Solutions
79 Debugging in Visual Studio Code
80 Let’s Debug
81 Common Mistakes in Action
82 Common Mistakes in Action Take 2

Pointers
83 Pointers
84 Working With Pointers
85 Defining and Accessing Pointers
86 Let’s Practice with Pointers
87 Testing for a NULL Pointer
88 Const Pointer and Const Data
89 Functions And Pointers
90 Challenge Simple Swapper
91 Challenge Review Simple Swapper
92 Challenge Float Decomposition
93 Challenge Review Float Decomposition

Arrays
94 Arrays Introduction
95 Working with Arrays The Wrong Way!
96 Defining and Accessing Arrays
97 Initializing Arrays
98 Find the Size of an Array
99 Pointers and Arrays
100 Pointers Arithmetic
101 Multidimensional Arrays
102 Variable Length Arrays
103 Challenge Random Matrix
104 Challenge Review Random Matrix
105 Challenge Prime Numbers Further Improved
106 Challenge Review Prime Numbers Further Improved P1
107 Challenge Review Prime Numbers Further Improved P2

Strings
108 Strings
109 Working with Strings
110 Defining and Accessing Strings
111 String Length
112 String Copy
113 String Compare
114 Find Character in String
115 Find Substring in String
116 String Tokenization P1
117 String Tokenization P2
118 Analyzing And Converting Strings
119 Let’s Practice With Numeric Conversions
120 Challenge Move The Rook!
121 Challenge Review Move The Rook! P1
122 Challenge Review Move The Rook! P2
123 Challenge Get The Line
124 Challenge Review Get The Line

Dynamic Memory Allocation
125 Dynamic Memory Allocation Introduction
126 Why Use Dynamic Memory Allocation
127 Stack, Heap And Static
128 Malloc, Calloc, Realloc And Free
129 Challenge Get The Line Dynamically!
130 Challenge Review Get The Line Dynamically! P1
131 Challenge Review Get The Line Dynamically! P2

Structures
132 Structures Introduction
133 Structuring Data
134 Defining and Accessing Structures
135 Initializing Structures
136 Bit Fields
137 Arrays Of Structures
138 Pointers To Structures
139 Structures And Functions
140 Pointers Versus Arrays Members
141 Flexible Array Members
142 Challenge Workouts Heart Rate Monitor
143 Challenge Review Workouts Heart Rate Monitor

Unions
144 Unions Introduction
145 How To Use Unions

Preprocessor and Macros
146 Macros Introduction
147 Preprocessor Directives
148 Simple Macros
149 Function Like Macros
150 Conditional Compilation

File Input and Output
151 File Input Output Introduction
152 File Streams
153 Accessing Files
154 Reading Files
155 Writing Files
156 Moving Within Files
157 Let’s Practice With File IO

Modular Programming
158 Modular Programming Introduction
159 Modularize Your Project
160 Build Your Project

Homepage