C Programming Tutorials — From Beginner Basics to Advanced Concepts

Flat illustration of a bold letter C with pointer arrows memory blocks stack diagram and file handling icons representing C programming tutorials

C is one of the most important programming languages ever created. Developed in the early 1970s, it remains the foundation of operating systems, embedded systems, compilers, and high-performance software used across the world today. Learning C gives you a deep understanding of how computers actually work — memory, pointers, data structures, and low-level system operations that higher-level languages hide from you.

At MYCPLUS we have been publishing C programming tutorials, source code examples, and practical guides since 2004. Whether you are writing your first Hello World program or working through complex data structure implementations, this section covers every stage of the C learning journey. You will find step-by-step tutorials, working source code you can compile and run immediately, and clear explanations of concepts that are often poorly explained elsewhere.

C is the language that powers Linux, Windows internals, embedded microcontrollers, game engines, and countless performance-critical applications. If you want to become a serious systems programmer, understand how memory works, or simply build a rock-solid foundation before moving to C++, Java or Python — start here.

What You’ll Learn:

  • Core C syntax — variables, data types, operators, control flow and functions explained from first principles
  • Pointers and memory management — heap allocation, pointer arithmetic, dynamic arrays and avoiding memory leaks
  • Data structures in C — arrays, linked lists, stacks, queues and trees implemented from scratch
  • File handling — reading and writing files, binary data and practical I/O operations in C
  • Algorithms in C — sorting, searching, recursion and graph traversal with working source code examples
  • Systems programming concepts — understanding how C interacts with the operating system, processes and memory

Why MYCPLUS Trusted by C programmers since 2004 — every tutorial includes working source code you can compile, run and learn from immediately.

UDP Data Sender and Receiver in C

Writing UDP Data Sender and Receiver in C

The sender program is a UDP datagram sender that can be configured through command line options. It initializes Winsock, creates a UDP socket, and either connects to a recipient’s IP address or uses sendto() to send datagram messages. The receiver program complements the sender by receiving UDP datagrams.

C Program to Calculate Factorial of a Number

C Program to Calculate Factorial of a Number

This C program is designed to compute the factorial of a user-entered integer. The program employs a for loop to calculate the factorial and then displays the result. The user can continue inputting positive integers to obtain their factorials until a non-integer input is provided which terminates the program.

Base 64 Encoding and Decoding

C Implementation of Base64 Encoding and Decoding

Base64 encoding and decoding schemes are commonly used to encode binary data. Normally this is required when textual data needs to be transferred over the network or similar media and make sure that data is transferred without any modification. Base64 is commonly used in a number of applications, including email via MIME, and storing complex data in XML. This is a very simple implementation of base64 encoding and decoding in C programming language. There are number of C libraries available for encoding and decoding as well i.e. libb64, OpenSSL Base64, Apple’s Implementations, arduino-base64 etc.

Arrays in C Programming

Arrays in C Programming

In C Programming, an array can be defined as number of memory locations, each of which can store the same data type and which can be referenced through the same variable name. Arrays can be of two types i.e. One Dimensional Array (such as lists) and Multidimensional Arrays (such as tables or matrices).

Working with Pointers

Working with Pointers in C

A pointer is a variable that represents the location of a data item, such as a variable or an array element. Pointers are used frequently in C, as they have a number of useful applications. For example, pointers can be used to pass information back and forth between a function and its reference point. Pointers provide a way to return multiple data items from a function via function arguments to
be specified as arguments to a given function.

graphics.h Reference

256-Color VGA Programming in C

This tutorial covers many topics in VGA programming in the C programming language. Tutorial assumes that the programmers have a comprehensive understanding of C and should also have a familiarity with DOS and BIOS function calls and interrupts. Knowledge of trigonometry and geometry would also be helpful.

Union in C Programming

Union in C Programming

A union in C programming is a user defined data type which may hold members of different sizes and type. Union uses a single memory location to hold more than one variables. However, only one of its members can be accessed at a time and all other members will contain garbage values. A structure is a convenient tool for handling a group of logically related data items. Structure help to organize complex data is a more meaningful way. It is powerful concept that we may after need to use in our program Design.

Scroll to Top