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: Version Control, Git (Version Control System), Object Oriented Programming (OOP), C# (Programming Language), Microsoft Visual Studio, Development Environment, Application Frameworks, Program Development, Integrated Development Environments, Computer Programming, Programming Principles, Microsoft Development Tools, Computational Logic, Data Structures
Beginner · Course · 3 - 6 Months

Duke University
Skills you'll gain: File I/O, Memory Management, Maintainability, C (Programming Language), Software Engineering, System Programming, Systems Development Life Cycle, Software Development, Simulations, Command-Line Interface, Collaborative Software
Beginner · Course · 1 - 4 Weeks

Korea Advanced Institute of Science and Technology(KAIST)
Skills you'll gain: Scala Programming, Programming Principles, Theoretical Computer Science, Other Programming Languages, Computer Programming, Computational Logic, Functional Design, Data Structures, Memory Management
Mixed · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C and C++, C++ (Programming Language), Object Oriented Programming (OOP), Memory Management, C (Programming Language), Algorithms, File I/O, Graph Theory, Data Structures, Secure Coding, Scaled Agile Framework
Intermediate · Course · 1 - 3 Months

Skills you'll gain: C (Programming Language), Game Design, Programming Principles, Video Game Development, System Programming, Program Development, Computational Logic, Data Validation, Command-Line Interface, Code Reusability, User Interface (UI), Data Structures
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Other Programming Languages, Program Development, C and C++, C++ (Programming Language), Application Development, Computer Programming, Development Environment, Programming Principles, Software Development, Computer Science
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Embedded Systems, Embedded Software, Control Systems, Industrial Engineering, Computer Systems, C (Programming Language), Peripheral Devices, Wireless Networks, Computer Architecture, Cybersecurity, Electronics Engineering, Electronics, Cloud Computing, Electronic Components, Memory Management
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: C and C++, C++ (Programming Language), Data Structures, Application Development, Program Development, Data Storage, Programming Principles, Computer Programming, Java Programming, Software Development, Computer Science
Beginner · Guided Project · Less Than 2 Hours

École Polytechnique Fédérale de Lausanne
Skills you'll gain: C++ (Programming Language), Programming Principles, Data Structures, Computer Programming, Code Reusability, Object Oriented Programming (OOP), Game Design, Memory Management
Beginner · Course · 1 - 3 Months

Korea Advanced Institute of Science and Technology(KAIST)
Skills you'll gain: Scala Programming, Other Programming Languages, Computer Programming, Programming Principles, Program Development, Theoretical Computer Science
Mixed · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), C and C++, Application Development, Program Development, Computer Programming, Programming Principles, Code Reusability, Computational Logic
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Embedded Systems, Embedded Software, Memory Management, C (Programming Language), Software Development
Intermediate · Guided Project · Less Than 2 Hours