Ich setze hier mal auf.
Lebt das Projekt noch? Die letzten Sourcen, die ich heruntergeladen habe, sind mehr als ein Jahr alt. Ich habe eine Reihe Bugs behoben und neue Funktionen hinzugefügt. Ich habe zwar auf der Version 0.5 aufgesetzt, das ganze aber heute mit der 0.6 abgeglichen. So viel hat sich da ja nicht getan.
Bugs habe ich zum Beispiel bei ...printf gefunden (Nachkommastellen bei %f funktionierten u.a. nicht), aber auch woanders. vsnprintf() kann jetzt auch mit NULL-Pointer umgehen. Das ist wichtig, weil man so den benötigten Speicherplatz für eine Formatierung ermitteln kann. Dadurch konnte ich asprintf() und vasprintf() implementieren (s.u.).
Ich habe ein paar Funktionen hinzugefügt. Zum Beispiel qsort(), asprintf(), vasprintf(), ...scanf(), strtod(), strtof(), feof(), ferror(), ungetc(), getchar(), fgets(), getc(), fflush(), remove(), rename(), bsearch(), strnlen(), strtok(), localtime(), strftime().
Die FILE-Struktur habe ich erweitert, um feof(), ferror() und ungetc() implementieren zu können, und die Feldnamen denen der MINT-Library angepasst.
mktime() habe ich korrigiert, hier wurden Schaltjahre nicht richtig berücksichtigt (einfaches Teilen durch 4 reicht nicht).
ctype.h hat ein paar neue Makros bekommen (isalnum, iscntrl, isgraph, isprint, ispunct, isxdigit) und isspace berücksichtigt jetzt auch "\f").
Die ...scanf()-Funktionen müssen noch ordentlich getestet werden, das habe ich nur rudimentär gemacht. Aber ich fände es gut, wenn das Projekt nicht einschläft, denn die Speicherersparnis ist schon enorm. Allein mein kleines Testprogramm für sscanf() ist nur 16,5 KB groß, mit der MINT-Library sage und schreibe das Zehnfache!
Meine aktuellen Sourcen von heute könnt ihr gerne herunterladen:
http://www.graf-bussmeier.de/download/libcmini_20170729.rarÄnderungen werden ja mit diff sichtbar.
Oliver