Personal library for C applications
Find a file
2025-04-17 09:53:37 +02:00
include/htd Add primitives, hash map and dynamic array 2025-04-17 09:53:37 +02:00
src/data_structure Add primitives, hash map and dynamic array 2025-04-17 09:53:37 +02:00
tests Add primitives, hash map and dynamic array 2025-04-17 09:53:37 +02:00
.gitignore Add primitives, hash map and dynamic array 2025-04-17 09:53:37 +02:00
CMakeLists.txt Add primitives, hash map and dynamic array 2025-04-17 09:53:37 +02:00
README.md Add primitives, hash map and dynamic array 2025-04-17 09:53:37 +02:00

Personal library for C

Features

Primitives

Use shorter more concise names for common C types.

  • i8: 8-bit signed integer
  • u8: 8-bit unsigned integer
  • i16: 16-bit signed integer
  • u16: 16-bit unsigned integer
  • i32: 32-bit signed integer
  • u32: 32-bit unsigned integer
  • i64: 64-bit signed integer
  • u64: 64-bit unsigned integer
  • f32: 32-bit floating point
  • f64: 64-bit floating point
  • usize: Unsigned integer of the same size as a pointer
  • isize: Signed integer of the same size as a pointer

Data structures

  • Dynamic array: A dynamic array that can grow and shrink in size.
  • Hash map: A hash map that uses linear probing for collision resolution and Murmur3 for hashing.

Building

mkdir build
cd build
cmake ..
make

Testing

cd build
ctest

Installing

cd build
make install

Uninstalling

cd build
make uninstall