Advanced C Programming Masterclass: Pointers & Memory in C
What you'll learn
- Introduction To Pointers For Beginners
- Pointers Declaration, Initialization, and Usage
- Pointers Dereferencing
- Multiple Indirection
- Pointers Arithmetics
- Generic Pointers
- Dynamic Memory Allocation
- "malloc" function
- "calloc" function
- "realloc" function & "issues"
- "free" function
- Dangling Pointers
- Memory Leakage Tool - Valgrind
- Pointers Arithmetic
- "sizeof" operator
- Arrays & Pointers
- Strings & Pointers
- A few Secrets of Strings using Pointers
- Function Pointers
- Arrays of Pointers to Functions
- Basic knowledge of C programming language - ideally having completed my "C Programming for Beginners" course on Udemy
- A computer with Windows, Linux or Mac OS
- At least 4GB RAM (recommended)
C programming language still remains one of the most popular and used languages in 2022.
There is a high demand for C developers in the market - at both large companies as well as startups. Thus, having good C programming skills can give you great career options in different industries, such as:
- Cyber Security.
- Smart Homes & Smart Cities.
- And especially in Embedded Systems where you have Sensors and Micro-Controllers.
What you will learn in this course?
There is an 'ancient' phrase saying "to become an expert in C - you need to master pointers".
One of the main objectives of this course is designed to take your basic knowledge of pointers (one of the most significant topics) to the next level. The goal is to take the basic skills you've gained so far in C programming and take this knowledge to a whole new level.
We will cover pointers, memory addressing, pointers to functions, advanced concepts of structs and dynamic memory allocation, and so much more.
The beauty of this course is that it regularly gets updated with new material. And the material being added to the course these days includes lots of information in the low-level programming (the bits and bytes), preparation for usage of Embedded C in Embedded Systems, and other very important topics for the next generation of engineers.
This course covers the topics in-depth, from different angles, and with various visualizations and illustrations - that should make the learning process of pointers and low-level programming much easier and fun for you.
Also, you will get a whole dedicated section on how to use a debugger and what is the debugging process that may help you so much in developing your future applications.
After completing this course you will gain plenty of new skills and knowledge that may improve your chances of getting a job position as a C Developer as well as increasing your chances to pass the exam (if you're still a student).
What's different about this course?
Vlad Budnitski will be your instructor for this course.
He has years of experience working as a Software Developer (also working with complex systems developed in C language). As well as 4 years of experience teaching C Programming for Beginners and Advanced C Programming in College.
So you got lucky on this one because you will get knowledge from a practical software developer and experienced instructor.
You will get a handpicked, concise, and straight to the point material that you will be amazed by the way these complicated pointers can be taught.
This course is also guided with concrete exercises, challenges, and full solution videos - that will help you to practice the materials.
Who's this course for?
First of all, this course is not for "absolute beginners" and it requires you to have at least the basic knowledge of programming. It's assumed you have some knowledge of the basics in C - preferably having completed our "C Programming for Beginners" course (here on Udemy).
This course is great both for students in college as well as graduates who need to learn and understand pointers in depth.
In addition, if you're planning to explore and master the Embedded Systems domain using Embedded C - then this course is a great preparation of various topics for the Embedded Domain. Once you master all the concepts of this course you'll be a few steps closer to proceeding and mastering Embedded Systems, programming Micro Controllers, etc.
Do you still have got doubts?
That's OK. Pointers can get us all confused to some extent... If you're still unsure if this course is exactly what you're looking for, feel free to go over the full detailed curriculum. Then, enroll in the course and be sure that you've done a great decision to improve your knowledge in pointers and to become a better C developer.
Who this course is for:
- Basic knowledge (and Beyond) C Developers
- Students at the Computers and Engineering Faculties
- C programmers who need to learn and understand Pointers In Depth
- This course is not aimed for "total beginners". It's better to have some basic knowledge in C Programming before enrolling in this course. I would suggest purchasing my "C Programming for Beginners" course first, fully complete it and then come back to get ultimate experience with Pointers.
my name is Vlad and I’ll be your teacher on Udemy!
I have a B.Sc. in Computer Science and a B.Sc. in Electronic Engineering.
Also, I have practical experience working as an Engineer at a large corporation like an Intel Company, as well as a couple of Start-Ups which included the development of IoT and Cyber-Systems and making some cool projects with different companies (like Wacom).
I feel eager and passionate about sharing my knowledge in the best way I can and helping you to learn programming topics in the best and easiest way.
So I hope you're ready for the beginning of our journey together - let’s LEVEL UP our Programming Skills!