C & Shell Fundamentals
← All articles

C & Shell Fundamentals

From first shell commands to pointers, linked lists, GDB and Valgrind.

Project overview: C Programming — Full Overview

  1. Notes Systems & Low-Level

    Shell Tips — Commands & Bash Scripting

    A practical guide to essential Shell commands and writing your first #!/bin/bash script

    Jul 2026 · Linux· Shell
  2. Notes Systems & Low-Level

    C — Basics

    Core C programming concepts from variables and pointers to memory allocation

    Jul 2026 · C
  3. Notes Systems & Low-Level

    C — Recursion

    Understanding recursive functions, the call stack, and stack overflow in C

    Jul 2026 · C
  4. Notes Systems & Low-Level

    C — Header Files

    How to write and use header files in C — declarations, include guards, and project organisation

    Jul 2026 · C
  5. Notes Systems & Low-Level

    C — Makefile

    How to write a Makefile to automate C compilation, with all, clean, fclean, and re rules

    Jul 2026 · C· Linux
  6. Notes Systems & Low-Level

    C — Structs

    How to group data with structs and typedef in C, and how they underpin linked lists and trees

    Jul 2026 · C
  7. Notes Systems & Low-Level

    C — Linked Lists

    How to build and manipulate singly linked lists in C — nodes, traversal, insertion, deletion, and memory management

    Jul 2026 · C
  8. Notes Systems & Low-Level

    C — Function Pointers

    How to store, pass, and call functions through pointers in C, including void * generic callbacks

    Jul 2026 · C
  9. Notes Systems & Low-Level

    C — Debugging with GDB

    How to compile for debugging and use GDB to step through C code, inspect variables, and set breakpoints

    Jul 2026 · C· Linux
  10. Notes Systems & Low-Level

    C — Debugging with Valgrind

    How to use Valgrind to detect memory leaks, invalid reads and writes, and uninitialised values in C programs

    Jul 2026 · C· Linux
© 2026 Samuel Styles