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 Systems, C (Programming Language), Embedded Software, Data Structures, Programming Principles, Data Management, Data Storage Technologies, Software Development
Intermediate · Guided Project · Less Than 2 Hours

Skills you'll gain: Microarchitecture, Computer Architecture, Hardware Architecture, Computer Hardware, Computer Systems, Embedded Systems, Data Storage, Computer Programming, C (Programming Language), C# (Programming Language)
Beginner · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Data Structures, C (Programming Language), Development Environment, Software Design Patterns, Programming Principles, Computational Thinking, Computer Programming, Integrated Development Environments, File Management, Algorithms, Maintainability, Simulations, Data Validation
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), Programming Principles, Data Structures, Computer Programming Tools, Development Environment, Software Installation, Debugging
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Software, Embedded Systems, Computer Hardware, Hardware Architecture, Internet Of Things, System Software, Peripheral Devices, C (Programming Language), Software Architecture, Simulations, Development Environment, Debugging, Systems Integration
Beginner · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Algorithms, C (Programming Language), Programming Principles, Computer Programming, Graph Theory, Data Structures
Intermediate · Course · 1 - 3 Months
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), C (Programming Language), Data Structures, C and C++, Debugging, C++ (Programming Language), Object Oriented Programming (OOP), Programming Principles, Computer Programming, Unit Testing, Command-Line Interface, Data-oriented programming, Integrated Development Environments, Maintainability, Computer Science, Algorithms, File Systems, Integration Testing, Software Design, Data Management
Intermediate · Specialization · 3 - 6 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Computer Architecture, Embedded Software, Computer Programming, Program Development, Data Structures, Debugging, Linux
Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), Data Structures, C and C++, Object Oriented Programming (OOP), Software Design Patterns, Debugging, Object Oriented Design, Computer Programming, Unit Testing, Algorithms, C (Programming Language), Programming Principles, Integrated Development Environments, Graph Theory, Computer Science, File Systems, Artificial Intelligence, Integration Testing, Software Design
Intermediate · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Software Design Patterns, Object Oriented Programming (OOP), Computer Programming, C (Programming Language), Algorithms, Graph Theory, Artificial Intelligence, Data Structures, Game Design
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Embedded Software, Performance Tuning, System Programming, Software Development Tools, Embedded Systems, Microarchitecture, Software Development, Development Environment, Hardware Architecture, Debugging, Application Security, Secure Coding, Computer Architecture, C (Programming Language), System Configuration, Application Development, C++ (Programming Language), System Requirements, Product Support
Intermediate · Specialization · 3 - 6 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Embedded Systems, Data Structures, Algorithms, Computer Programming, Linux, Computer Programming Tools, Development Environment, Debugging, Software Development Tools
Beginner · Course · 1 - 3 Months