Repository that contains the project files that are developed for the learning and practice of the C language.
- All your files will be compiled on Ubuntu 20.04 LTS using
gcc
, using the options-Wall -Werror -Wextra -pedantic -std=gnu89
- C files are compiled using
gcc 4.8.4
- Code should use the
Betty
style.
All the following folders are projects carried out during studies:
Files | 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. |
0x1A-hash_tables | It aims to learn how to implement Hash Tables with C language. |
0x1C-makefiles | It aims to learn what are makefiles, when, why and how to use them (with variables, explicit and implicit rules). |
Files | Description |
---|---|
0x11.C-Printf | Project focused on creating your own printf . |
0x16.C-Simple Shell | Project to create your own Shell. |
Holberton School Student