Please ensure Javascript is enabled for purposes of website accessibility
C Programming For Beginners
0( 0 REVIEWS )
5h 58m

This course is designed for those interested in learning how to program in C.

Read more.
Course Skill Level
Time Estimate
5h 58m


Huw Collingbourne is the technology director at SapphireSteel Software, developers of the “Sapphire” Ruby IDE for Visual Studio and the “Amethyst” IDE for the Adobe Flash Platform. He is the author of The Book Of Ruby from No Starch Press. He runs Bitwise Courses and teaches courses on a range of programming topics. Huw has been a programmer for more than 30 years. He is a well-known technology writer in the UK. For over ten years he wrote the Delphi and Java programming column for PC

Only want this course? Buy this course for $199 $29 and keep lifetime access. Click here

About This Course

Who this course is for:

  • Beginners – if you’ve never coded before, you can learn C step by step
  • Programmers switching to C from some other language such as Java, Ruby or Python
  • Cross-platform developers – there are C compilers for all major operating systems
  • Anyone who needs to program C++ or Objective-C. The C language is the place to start
  • Newcomers to programming
  • Programmers of other languages who want a fast way to C
  • Anyone who needs to master C as a basis for using C++ or Objective-C

What you’ll learn: 

  • The fundamentals of programming – from the ground up
  • How to program on a Mac or on Windows
  • The nitty-gritty details of the C language
  • Advanced topics such as memory allocation, the stack and heap, and binary file IO


  • A C compiler and code editor (both are available free)

Software version used in the course:

  • C language

The fastest, easiest way to learn to program C on a Mac or Windows. This course will teach you to program the C language from the ground up. You will learn everything from the very fundamentals of programming right through to the complexities of pointers, addresses, and File IO. Maybe you’ve tried to master C before but failed. Or maybe you are new to C or new to programming. If so, this is the course for you!

C is one of the most important of all programming languages. It is used to program desktop applications, compilers, tools and utilities and even hardware devices. The C language is fast and efficient – but it can be hard to learn. Unless you use this course. This course begins with a gentle introduction to C but quickly moves on to explain some of its most confusing features: everything from C’s ‘scoping’ rules to the curious connection between arrays and memory addresses. By the end of the course, you will have a deep understanding both of the C language itself and also of the underlying ‘architecture’ of your computer.

What am I going to get from this course?

  • Master C programming concepts from the ground up
  • Use the source code examples to learn step-by-step
  • Understand the special features of C: pointers, header files, null-terminated strings, buffers, IO
  • Videos explain everything in minute detail
  • Read the supplied eBook, The Little Book Of C, to explore the topics in even more depth
  • Test your understanding with end-of-section quizzes

Take this course today and learn how to program C.

Our Promise to You

By the end of this course, you will have learned how to program in C.

10 Day Money Back Guarantee. If you are unsatisfied for any reason, simply contact us and we’ll give you a full refund. No questions asked.

Course Curriculum

Section 1 - Getting Ready
Welcome To The Course 00:00:00
C Editors And IDEs 00:00:00
FAQ: Read This First! 00:00:00
Install CodeLite (Windows Or Mac) 00:00:00
Install A C Compiler On A Mac 00:00:00
Introduction To CodeLite 00:00:00
Programming C With NetBeans 00:00:00
Importing Projects Into NetBeans 00:00:00
Compiling C Programs At The System Prompt 00:00:00
Using Visual Studio 00:00:00
The Little Book Of C 00:00:00
C Source Code Archive 00:00:00
Section 2 - C Programming Basics
A First Program – Hello World 00:00:00
Arguments And Return Values 00:00:00
Passing Commandline Arguments To Your Program 00:00:00
How To Open A Command Prompt On Windows Or OS X 00:00:00
Printf 00:00:00
Comments 00:00:00
Section 3 - Variables, Constants And Types
Variables And Types 00:00:00
Integers And Floating Point Numbers 00:00:00
Constants 00:00:00
More About Constants 00:00:00
Naming Conventions 00:00:00
Section 4 - Operators, Tests And User Input
Operators: Equality And Assignment 00:00:00
Operators: Tests And Comparisons 00:00:00
Compound Assignment Operators 00:00:00
Increment And Decrement Operators 00:00:00
If And Else Tests 00:00:00
Problems With Gets() And Fgets() 00:00:00
Input, Buffers And Flushing 00:00:00
My Own Line-Reading Function 00:00:00
Logical Operators 00:00:00
Section 5 - Functions, Arguments And Switch
Functions 00:00:00
Arguments 00:00:00
Switch Statements 00:00:00
Switch Statements In More Detail 00:00:00
Section 6 - Arrays, Loops And Break
Arrays 00:00:00
Initializing Arrays 00:00:00
‘While’ Loops 00:00:00
‘Do..While’ Loops 00:00:00
Break 00:00:00
Break And Continue 00:00:00
Multidimensional Arrays 00:00:00
Section 7 - Strings, Chars And Pointers
Strings, Pointers And Addresses 00:00:00
Null-Terminated Strings 00:00:00
Char Arrays And Pointers 00:00:00
Arrays, Pointers And Assignment 00:00:00
Strings And Functions, Stack And Heap 00:00:00
String Functions 00:00:00
Char Functions 00:00:00
Chars And Strings 00:00:00
Section 8 - Structs, Enums, Header Files And Scope
Structs 00:00:00
Typedef 00:00:00
Enums 00:00:00
Header Files 00:00:00
A Custom Header File 00:00:00
Scope 00:00:00
Scope And External Files 00:00:00
Static Functions And Variables 00:00:00
Compiling From The Commandline 00:00:00
Section 9 - File-Handling
Opening And Closing Files 00:00:00
File Modes 00:00:00
Reading And Writing A Text File 00:00:00
Counting Lines In A Text File 00:00:00
Search In A Text File 00:00:00
Section 10 - Binary Files And Memory Allocation
Binary Files 00:00:00
Allocating And Freeing Memory 00:00:00
Types And Type Casts 00:00:00
Creating A CD Database 00:00:00
Saving And Loading Records In A Binary File 00:00:00
Adding Records To A Binary File 00:00:00
Modifying Records In A Binary File 00:00:00
And Finally… 00:00:00

Are you interested in higher education?

We’re working on a service to connect learners with higher education programs, enter your name and email to join the waitlist

You’ve been added to the waitlist!

Keep an eye out for the announcement via email.

You’ll be the first to know.



Enter your Name and Email for a chance to win Lifetime Access to all courses!
Promotion ends today.



Enter your Name and Email for a chance to win Lifetime Access to all courses!
Promotion ends today.

Success! You are now entered to win lifetime access to all courses. Winners are selected at the beginning of each month. 

P.S. Look out for our exclusive sales only shown to students on our email list!