C programming courses can help you learn syntax, data structures, algorithms, and memory management. You can build skills in debugging, optimizing code, and implementing efficient algorithms. Many courses introduce tools like GCC for compiling code, GDB for debugging, and libraries such as the Standard Template Library (STL) to enhance functionality. You'll also explore concepts like pointers, file handling, and dynamic memory allocation, which are crucial for developing robust applications.
Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Memory Management, Integrated Development Environments, Computer Programming Tools, Development Environment, System Programming, Software Development Tools, Program Development, Hardware Architecture, Systems Architecture, Eclipse (Software), Data Structures, Build Tools, C and C++, Programming Principles, Microarchitecture
★ 4.5 (274) · Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Embedded Software, Debugging, Embedded Systems, Memory Management, Integrated Development Environments, C (Programming Language), Computer Programming Tools, Development Environment, C and C++, Software Development Tools, System Programming, Eclipse (Software), Build Tools, Programming Principles, Data Storage
★ 4.8 (71) · Intermediate · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Computational Thinking, File I/O, Data Collection, Simulations, Data Analysis, Microsoft Visual Studio, C (Programming Language), C and C++, Statistical Analysis, Data Presentation, Automation, Program Development, Algorithms, Microsoft Development Tools, Programming Principles, Integrated Development Environments, Computer Programming, Data Structures, Data Storage, Code Reusability
★ 4.6 (433) · Beginner · Specialization · 3 - 6 Months

Duke University
Skills you'll gain: Programming Principles, Algorithms, C (Programming Language), Computer Programming, Program Development, Problem Solving, Solution Design, Computational Logic
★ 4.7 (7K) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Memory Management, Computational Thinking
Intermediate · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Debugging, Program Development, Software Documentation, Pseudocode, C++ (Programming Language), Computational Thinking, C and C++, Programming Principles, Computer Programming, Integrated Development Environments, Development Environment, Memory Management
★ 4.5 (18) · Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, C and C++, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Debugging, Computer Programming, Unit Testing, C (Programming Language), Software Design, Program Development, Algorithms, Graph Theory, Software Testing, Computer Science, Computational Logic
★ 4.5 (9.6K) · Intermediate · Specialization · 3 - 6 Months
University of California, Santa Cruz
★ 4.6 (792) · Intermediate · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Memory Management, Development Testing, Programming Principles, Generative AI Agents, Code Reusability
Beginner · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: Memory Management, C (Programming Language), Embedded Systems, Software Visualization, Computer Engineering, Embedded Software, System Programming, Computer Programming, Data Structures, Linux
★ 4.7 (65) · Beginner · Course · 1 - 3 Months

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), Code Reusability, Memory Management, Programming Principles, Data Structures, Development Environment
Beginner · Course · 1 - 4 Weeks
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), File I/O, Data Structures, Programming Principles, Object Oriented Design, Object Oriented Programming (OOP), Debugging, Computer Programming, Unit Testing, C (Programming Language), Program Development, Computer Science, Software Testing, Algorithms, Code Reusability, Graph Theory, C and C++, Computational Logic, Memory Management, Software Design
★ 4.5 (7.3K) · Intermediate · Specialization · 3 - 6 Months