Circular Queue in C – Array Implementation with Modulo Wrap

A circular queue in C solves the main limitation of a linear queue: wasted array slots after dequeuing. In a linear queue, rear keeps advancing rightward; once it hits the end of the array, the queue reports “full” even if dequeued slots at the front are free. A circular queue wraps rear back to index …

Queue Program in C – Array Implementation with ENQUEUE and DEQUEUE

A queue program in C implements the FIFO (First In, First Out) data structure — elements are inserted at the rear and removed from the front, just like a real queue. The two core operations are ENQUEUE (insert) and DEQUEUE (remove). This page covers the array-based linear queue with all operations, a step-by-step trace, and …

Infix to Postfix Conversion in C – Shunting-Yard Algorithm

Infix to postfix conversion in C transforms a human-readable arithmetic expression like A + B * C into postfix notation A B C * +, where operators follow their operands. Postfix eliminates the need for parentheses and precedence rules during evaluation — a stack scan from left to right is all that’s needed. This page …

C Program to convert IP address to 32-bit long int

An IPv4 address is displayed as four decimal octets separated by dots (e.g., 192.168.1.1) but is stored internally as a single 32-bit unsigned integer. Converting between the dotted-decimal string and the integer form is a fundamental networking operation — inet_addr() in the POSIX socket API does exactly this. Understanding how to do it manually shows …

C Program to Compare Two Strings – Manual and strcmp()

This C program compares two strings and reports whether they are equal, or which one comes first in dictionary (lexicographic) order. Comparison works character by character: walk both strings together until two characters differ or a string ends, then decide from that first difference. This page shows a manual character-by-character implementation and the standard library …

C Program to demonstrate time functions.

The time.h library in C provides functions for getting the current date and time, formatting it for display, and converting between representations. The central type is time_t — typically a 32-bit or 64-bit integer counting seconds since the Unix epoch (1970-01-01 00:00:00 UTC). Five key functions cover the most common time operations: time(), ctime(), localtime(), …