Git Product home page Git Product logo

alx-low_level_programming's Introduction

ALX Low Level Programming

This course introduced me to C programming and helped me grow to the point where I agreed that C is fun

The repository holds most of the C projects that I did while training to become a fullstack software engineer in the fully funded ALX SWE program. The table below gives a brief summary of all the projects; you may click on any of them to see the content of the particular project.

Project Title Brief Description
C - Hello World This put to test my knowledge of c compilation stages and processes, bash scripting, and environment variables. Here, I learned how to use certain operators (such as sizeof) and standard library functions (such as; printf, puts & putchar) in c. And more...
C - Variables, if, else, while The project gave me an understanding of datatypes, variables, conditional statements and while loop in c. I also learned about arithematic, logical, relational and boolen operators; I experienced the use of ASCII values as well
C - Functions, Nested loops Here, I learned how to use nested loops, the scope of variables, header files, prototypes, function declaration and function definition in c
C - Debugging The project was about how to read errors and manually get bugs out of the codes
C - More functions, Nested loops All about writing some user define functions, saving the prototypes in the main.h file and testing them in some main.c files
C - Pointers arrays strings - 0 About pointers, arrays, strings and how to manipulate them
C - Pointers arrays strings - 1 Here, I was made to write more user defined functions and to emulate some standard library functions defined in strings.h
C - Pointers arrays strings - 2 This was about pointers to pointers, multidimensional arrays, and emulating common standard library functions used to manipulate strings
C - Recursion About recursive functions in c, how to use them, when to use them, and when not to use them
C - Static libraries The meaning, function, making and usage of static libraries in c; understanding what ar, ranlib and nm do and how they are used
C - argc argv The project was about writing programs that arguments could be passed to on the command line while running them.
C - Malloc, free About dynamic memory allocation (malloc) and freeing the dynamically allocated memory, and how to check for memory leaks with valgrind
C - More malloc, free This project introduced the exit, calloc, realloc (standard library) functions and how they are used
C - Preprocessor About common predefined and user defined macros and how to use them; and the essence of include guard in header files
C - Structures, typedef The project was about using struct and typedef to create a data structure and non-existing datatype that is made up of some primitive datatypes. If you wish to learn about struct, I simplified it here
C - Function pointers About pointers that hold the address of funtions and serve as access points of the functions
C - Variadic functions Writing c functions that take variable number of arguments each time they're called; knowing the use of va_arg, va_start, va_end and const
C - Singly linked list About linking up nodes which take the form of structs that are connected to one another in an orderly manner, following convention
C - More singly linked list How to use singly linked list
C - Bit manipulation How to manipulate bits and use bitwise operators
C - File I/O About how to use system calls, such as; open, close, read and write to interact with the kernel and how to use the flags โ€” O_RDONLY, O_WRONLY, O_RDWR
C - Doubly linked list A more complex form of singly linked list
C - Dynamic libraries The meaning, function, making and usage of dynamic libraries in c; understanding what nm, ldd and ldconfig do and how they are used; knowing the use of the environment variable $LD_LIBRARY_PATH and how to use it
C - Hash tables About hash functions and hash tables, what collisions are and the common ways to handle them
C - Makefile Writing own Makefile and running it with the make utility on a Linux machine

alx-low_level_programming's People

Contributors

tpauldike avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.