Skip to content

oliverkwebb/pdlibc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pdlibc - A demonstration libc that aims to be C89 compatible


pdlibc (Public Domain Libc) is a example implementation of the standard C library designed to be as simple as posible.

It currently provides most of the subset of functions from C89 and the linux kernels nolibc

The functions that have had full tests for them (make test):

  • abort()
  • assert()
  • atexit(), exit()
  • atoi(), atol(), strtod()
  • bsearch()
  • calloc()
  • cos()
  • fabs()
  • fopen()
  • free()
  • fwrite()
  • getenv()
  • atan() and atan2()
  • setlocale(), localeconv()
  • rand(), srand()
  • IO buffering (setvbuf, fflush)
  • labs(), abs()
  • malloc()
  • memcpy()
  • memmove()
  • memset()
  • putchar()
  • puts()
  • qsort()
  • raise()
  • sin()
  • Most of printf(), vfprintf(), vprintf(), and fprintf();
  • sqrt()
  • strcat()
  • strchr(), memchr()
  • strcmp(), strncmp()
  • strcpy(), strncpy(), memcpy()
  • strerror()
  • strlen()
  • The entirity of ctype.h
  • The entirity of varargs.h

See: https://port70.net/%7Ensz/c/c89/c89-draft.html#4.

About

Public Domain Example libc

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published