sdx (Standard Extension) is an extended standard library for C, it aims to be minimal and easy to use. It does not replace the standard library, it adds new features that are missing. The current C standard does not have any data structures and does a poor job on handling os dependent tasks. This library tries to cover parts C library doesn't.
on the status column: "wip" means that the library is not finished or not ready to use, may contain bugs and is not recommended to currently use on big projects.
"good" means that the library is either finished or passes the tests, It does not guarantee that there are no bugs but means that the library is in a usable state.
library | lastest version | status | doc | description |
---|---|---|---|---|
filesystem.h | 0.01 | wip | null | provides file/directory manipulation, creation deletion etc. Depends on extra.h |
system.h | 0.01 | wip | null | provide os specific functionalities, like reboot, power-off, get number of CPU cores... |
array.h | 0.01 | wip | null | array library that accepts any type. |
strvec.h | 0.01 | wip | view | array library for strings |
log.h | 0.01 | good | view | thread-safe logging library |
string_view.h | 0.01 | good | null | string view implementation for c |
extra.h | 0.01 | wip | null | extra utility library, includes compiler spesific macros. |
file_format.h | 0.01 | wip | null | library for parsing file types, pe32, elf etc.. |
types.h | 0.01 | good | null | better names for types than posix_t |
arena.h | 0.01 | wip | null | memory arena for c, experimental |
benchmark.h | 0.01 | wip | null | benchmark library for c, experimental |
string_operations.h | 0.01 | wip | null | string operation library |
mem_debug.h | 0.01 | wip | null | Memory debugging library, idea from this video |
sdx follows linux kernel coding style except couple of things.
- Comments can also be //. This library is C99 compatible so there should be no problem with that comment style.