Advanced C Programming Course
Become a True Master of the C Programming Language - Confidently Apply for Real Time or Embedded C Jobs or contracts!
What you will learn in this course?
The C programming language in 2020 is still one of the most popular and widely used languages. Having C programming skills gives you great career options, but learning the C language, particularly some of the trickier advanced stuff can be really difficult.
This course is designed to take your basic C skills to the next level and help you obtain mastery of the language by helping you understand advanced concepts of the C programming language, enabling you to master the art of problem-solving in programming using efficient, proven methods.
You’ll learn how to write high-quality C code and to make yourself more marketable for higher-level programming positions.
Just some of the topics in this huge 28-hour course include Threads, Function Pointers, Double Pointers, Recursion, Networking using Sockets, Bit manipulation, Macros, Signals, Storage Classes and loads more. Check the curriculum on this page for full details of what is included in this very comprehensive course.
By the end of this course, with your new-found skills, you will be able to apply for real-time/embedded C programming positions or any job that requires mastery of the C programming language and be able to apply your new skills developing your own Advanced C programs.
What’s different about this course?
Jason Fedin is your instructor in this course and this course takes the skills you learned in that course to the next level.
This course focuses on the details and a thorough understanding of all advanced C programming concepts. This is not just a how-to course, it is a “why?” course.
You will learn how to implement specific advanced C concepts such as multi-threading and double pointers, in addition to learning why they are the best approach and how they make you a high-quality C programmer.
Many, many examples, challenges and quizzes are provided to test your understanding of every concept that you have learned.
This course is unique to other courses here at Udemy in that the details and the why are explained. We do not just go through projects and provide a how-to.
Who is the course aimed at?
This is not a beginner’s course. It’s assumed you have some knowledge of the C programming language, preferably having completed our Beginner course (here on Udemy) or similar training and/or commercial programming experience in C or a similar language.
If you are ready to get started, click on the enroll or Add to Cart button on this page and start taking your C Language skills to the next level.
- Basic knowledge of the C programming language (ideally having completed our Beginners course on Udemy).
- A computer running Microsoft Windows, Linux or the Mac operating systems.
- At least 4GB of ram on your computer.
What you will learn
- Understand and be able to apply advanced concepts of the C programming language to create advanced C applications.
- Understand Function and Double Pointers, Recursion, Bit Manipulation, Macros, Signals and loads more (check curriculam on this page for full list).
- Learn all about threads and networking with Sockets.
- Master the art of problem solving in programming using efficient, proven methods.
- Be able to apply advanced C concepts to other programming languages.
- How to write high quality C code, to make yourself more marketable for higher level programming positions and be apply for real-time/embedded programming positions.
Who should attend
- This course is not aimed for beginners. If you have never used C programming before, then I would suggest you purchase our C Programming For Beginners course first, complete it then come back to take this advanced course.
- On the other hand, if you already have a basic or prior experience with C programming, then this course is for you!
Is available on google app?
Is available on ios?
- Lectures 169
- Quizzes 13
- Exercises 0
- Duration 28 total hours
- Skill level Intermediate Level
- Students 3894
- Last Updated April, 2020
Installing Required Software
Starting to Write Code
Working with Larger Programs
Advanced Data Types
Advanced Control Flow
Input and Output
Advanced Function Concepts
Advanced Debugging, Analysis, and Compiler Options
Static Libraries and Shared Objects
Useful C Libraries
Interprocess Communication and Signals
Extra Information - Source code, and other stuff
1 days ago
Really good content, especially if you take the time to do the challenges/coding elements as well. Would strongly recommend if you want to get into C at a more complex level!
1 week ago
Outdated lectures. Some functions are now not working as was intended by the lecturer during the time this lecture was made.
2 weeks ago
Very detailed explanations from an experienced teacher. Good code examples. Useful and well done.
2 weeks ago
David Santiago González Rico
First impression is that teacher knos alot and make me to have high expectancies.
2 weeks ago
The information is well laid out & explained, the challenges are good & the demonstrations for them also do a good job of showing another way of completing the challenge(s). I really liked the addition of the quizzes as I felt this gave me a much better idea of what I needed to go back over than just the challenges by themselves. Overall it's a great course and I recommend it.
3 weeks ago
This course was exactly what I was looking for. Jason is well educated in the topic. As an electronic engineer who's been writing embedded firmware for the past 2.5 years, I was looking for a course that covers the more advanced topics of the C programming language and go into the fundamentals of the language without wasting time on beginner concepts. This course has finally given me the confidence as a C-Programmer I was longing for. Even though some of the topics aren't necessarily relevant to embedded firmware I would definitely recommend the course to people who wants to improve their C-programming skills. Here are some tips to get the most out of the course: 1. Try all the challenges yourself before looking at the solutions 2. You'll gain the most when you're working on a C project for work or yourself whilst doing this course. It will also motivate you to complete the course. 3. Make hand written notes on EVERY single lecture (I frequently revisit them) Some constructive criticism: 1. There were a couple of errors in the quizzes, at least at the time when I did them 2. The lecture slides, while being great for taking hand-written notes, are a bit much and daunting at times. I'd recommend adding some animations and icons to cement some of the concepts (People are very visually stimulated and tend to remember better when they have a visual cue associated with an idea) 3. The naming convention format aren't consistent, mixing snake-case, pascal-case and camel-case for the same data types often. I'd really appreciate a follow up course that focusses on advanced embedded firmware concepts in C. Unit tests, best structure for firmware projects, modular reuse of hardware drivers, common pitfalls etc.
4 weeks ago
Like the way material is presented.
1 month ago
Content was extremely strong and good. Well done. I would recommend splitting all videos that are longer than 8 minutes (except for the summary at the end). This, because long videos can sometimes become a 'barrier' to continue the course. Thanks again.
1 month ago
Abhishek Prasad Dash
i love this course
1 month ago
Die im Kurs darzustellenden Inhalte wurden bereits in der Einleitung so detailliert und komplex dargelegt, daß sich einem die „Ohren aufrichteten“,- soll heißen, ich war im besten Sinne motiviert. Kompetenz und Didaktik sind über jeden Zweifel erhaben.