/alx-low_level_programming

This repository contains low-level programs

Primary LanguageC

Low-level programming & Algorithm

Module of Low-level programming and algorithm, carried out during Full Stack Software Engineering studies at ALx School.

Technologies

  • Scripts written in Bash 4.3.11(1)
  • C files are compiled using gcc 4.8.4
  • C files are written according to the C90 standard
  • Tested on Ubuntu 14.04 LTS

Projects

All of the following folders are projects done during the studies:

Project name Description
0x00-hello_world It aims to learn about what is entry point, basics commands (puts, printf, putchar), compilation process with gcc in C language
0x01-variables_if_else_while It aims to learn about arithmetic operators, relational operators, boolean operators, comments, declaring variables and loops in C language
0x02-functions_nested_loops It aims to learn about header files, functions, loops and nested loops in C language
0x03-debugging It aims to learn how to debug in C language
0x04-more_functions_nested_loops It aims to learn about nested loops in C language
0x05-pointers_arrays_strings It aims to learn about pointers and arrays in C language
0x06-pointers_arrays_strings It aims to learn about pointers and arrays in C language
0x07-pointers_arrays_strings It aims to learn about pointers and arrays in C language
0x08-recursion It aims to learn about recursion and how to implement it in C language
0x09-static_libraries It aims to learn about static libraries in C language
0x0A-argc_argv It aims to learn about how to use arguments passed to a program in C language
0x0B-malloc_free It aims to learn about automatic and dynamic allocation in C language
0x0C-more_malloc_free It aims to learn about how to use malloc, calloc, realloc and exit functions in C language
0x0D-preprocessor It aims to learn about how to include guard in the header files and macros in C language
0x0E-structures_typedef It aims to learn about structures and typedef in C language
0x0F-function_pointers It aims to learn about function pointers in C language
0x10-variadic_functions It aims to learn about variadic functions in C language
0x12-singly_linked_lists It aims to learn about linked lists in C language
0x13-more_singly_linked_lists It aims to learn about singly linked lists in C language
0x14-bit_manipulation It aims to learn about how to manipulate bits and use bitwise operators in C language
0x15-file_io It aims to learn about how to handle files (open, close, read and write), file descriptors, system calls and file permissions in C language
0x17-doubly_linked_lists It aims to learn about doubly linked list in C language
0x18-dynamic_libraries It aims to learn about dynamic and shared libraries in C language
0x19-stacks_queues_lifo_fifo Submodule of monty, an interpreter of Monty ByteCode files written with C language
0x1A-hash_tables It aims to learn how to implement Hash Tables with C language
0x1B-sorting_algorithms It aims to learn about sorting algorithms (bubble sort, insertion sort, selection sort, quick sort and so on) and Big O Notation in C language
0x1C-makefiles It aims to learn what are makefiles, when, why and how to use them (with variables, explicit and implicit rules)
0x1D-binary_trees It aims to learn about what is a binary tree, the different traversal methods to go through a binary tree and the different types of binary trees (complete, full, perfect and balanced)