Learn C programming fundamentals like data types, control flow, functions, pointers, and memory allocation while exploring debugging, profiling, and optimization tools like GDB and gcc.
Beginner
90 Lessons
12h
Certificate of Completion
Learn C programming fundamentals like data types, control flow, functions, pointers, and memory allocation while exploring debugging, profiling, and optimization tools like GDB and gcc.
AI-POWERED
AI-POWERED
This course includes
This course includes
Course Overview
This comprehensive course covers the fundamentals and advanced concepts of C programming to build a solid foundation for your programming journey. You’ll learn about essential topics like data types, variables, constants, and C statements, along with deeper explorations of control flow in C, including for loops and conditional statements in C. You’ll also learn about C functions, scope of variables, function arguments, and work with arrays, strings, and pointers in C. You’ll gain hands-on experience with d...Show More
TAKEAWAY SKILLS
Programming Language
C
Learn To Code
What You'll Learn
An understanding of data types in C, variables in C, and C expressions
The ability to apply control flow in C using for loops, switch cases, and conditional statements
Knowledge of C functions, function arguments, and memory handling, including stack vs. heap and dynamic memory allocation
Proficiency in debugging with tools like GDB, gprof, and optimizing code with gcc optimization flags
What You'll Learn
An understanding of data types in C, variables in C, and C expressions
Show more
Course Content
Introduction to C Programming
Data Types in C
C Operators and C Expressions
Control Flow in C
Functions in C
Complex Data Types
8 Lessons
Stack vs. Heap
5 Lessons
Pointers in C
7 Lessons
C string
5 Lessons
Input and Output Stream
6 Lessons
Macros and the C Preprocessor
4 Lessons
Header Files, Compiling and Linking
3 Lessons
Write a Shell in C
Project
C Debugger
5 Lessons
Code Profiling
3 Lessons
Parallel Programming in C
6 Lessons
Project: Using a Bootstrapped t-test
Project
Conclusion
1 Lesson
Miscellaneous
1 Lesson
Appendix: Setting Up the Environment
2 Lessons
Course Author
Show License and Attributions
Trusted by 1.4 million developers working at companies
Anthony Walker
@_webarchitect_
Emma Bostian 🐞
@EmmaBostian
Evan Dunbar
ML Engineer
Carlos Matias La Borde
Software Developer
Souvik Kundu
Front-end Developer
Vinay Krishnaiah
Software Developer
Eric Downs
Musician/Entrepeneur
Kenan Eyvazov
DevOps Engineer
Anthony Walker
@_webarchitect_
Emma Bostian 🐞
@EmmaBostian
See how Educative uses AI to make your learning more immersive than ever before.