Welcome to the ALX Low-Level Programming repository! This repository contains various projects and exercises focused on low-level programming concepts, primarily using the C programming language.
- Description
- Projects
- 0x00-hello_world
- 0x01-variables_if_else_while
- 0x02-functions_nested_loops
- 0x03-debugging
- 0x04-more_functions_nested_loops
- 0x05-pointers_arrays_strings
- 0x06-pointers_arrays_strings
- 0x07-pointers_arrays_strings
- 0x08-recursion
- 0x09-static_libraries
- 0x0A-argc_argv
- 0x0B-malloc_free
- 0x0C-more_malloc_free
- 0x0D-preprocessor
- 0x0E-structures_typedef
- 0x0F-function_pointers
- 0x10-variadic_functions
- 0x11. C - printf
- 0x12-singly_linked_lists
- 0x13-more_singly_linked_lists
- 0x14-bit_manipulation
- 0x15-file_io
- 0x16. C - Simple Shell
- 0x17-doubly_linked_lists
- 0x18-dynamic_libraries
- 0x19. C - Stacks, Queues - LIFO, FIFO
- 0x1A-hash_tables
- 0x1B. C - Sorting algorithms & Big O
- 0x1C-makefiles
- 0x1D. C - Binary trees
- 0x1E-search_algorithms
- How to Run
- Dependencies
- Author
This repository contains a series of projects and exercises aimed at teaching and reinforcing low-level programming concepts in C. Each project focuses on a specific topic or set of skills, ranging from basic syntax and control structures to more advanced topics like data structures, algorithms, and memory management.
π’ Description: Introduction to C programming with a focus on basic syntax, compilation, and simple I/O.
π’ Description: Learn about variables, control structures, and loops in C.
π’ Description: Dive into functions and nested loops, exploring their use and implementation in C.
π’ Description: Techniques and tools for debugging C programs.
π’ Description: Advanced use of functions and nested loops.
π’ Description: Introduction to pointers, arrays, and strings.
π’ Description: Advanced manipulation of pointers, arrays, and strings.
π’ Description: Further exploration of pointers, arrays, and strings.
π’ Description: Understanding and implementing recursive functions.
π’ Description: Creating and using static libraries.
π’ Description: Handling command line arguments in C programs.
π’ Description: Dynamic memory allocation using malloc
and free
.
π’ Description: Advanced dynamic memory management.
π’ Description: Using preprocessor directives in C.
π’ Description: Defining and using structures and typedef
.
π’ Description: Using pointers to functions.
π’ Description: Understanding and using variadic functions.
π’ Description: Implementing a custom version of the printf
function.
π’ Description: Implementing and manipulating singly linked lists.
π’ Description: Advanced operations on singly linked lists.
π’ Description: Techniques for manipulating data at the bit level.
π’ Description: Reading from and writing to files.
π’ Description: Building a simple UNIX shell.
π’ Description: Implementing and manipulating doubly linked lists.
π’ Description: Creating and using dynamic libraries.
π’ Description: Implementing stack and queue data structures.
π’ Description: Implementing and using hash tables.
π’ Description: Implementing and analyzing various sorting algorithms.
π’ Description: Writing and using Makefiles to automate compilation.
π’ Description: Implementing and manipulating binary trees.
π’ Description: Implementing and analyzing various search algorithms.
-
Clone the repository:
git clone https://github.com/Linf0rd/alx-low_level_programming.git
cd alx-low_level_programming
-
Compile the programs:
gcc -Wall -Werror -Wextra -pedantic <filename.c> -o <outputname>
-
Run the executables:
./<outputname>
-
GCC: Ensure you have the GCC compiler installed. You can install it using:
sudo apt update
sudo apt install build-essential
π¨βπ» Linf0rd