[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Lost] [Patch] Ein paar neue Libc-Funktionen
Antoine Kaufmann schrieb:
+double atof(const char* str)
+{
+ // TODO
+ return 0;
+}
Das macht mir wie gesagt noch Bauchschmerzen, weil das schwer zu
findende Bugs verursachen könnte.
=> #define LIBC_STUBS in config.h und standardmäßig deaktiviert.
Index: src/include/ctype.h
===================================================================
--- src/include/ctype.h (Revision 688)
+++ src/include/ctype.h (Arbeitskopie)
@@ -43,6 +43,7 @@
#define isxdigit(c) (isdigit(c) || ((c) >= 'a' && (c) <= 'f') || ((c) >= 'A' && (c) <= 'F'))
#define isupper(c) ((c) >= 'A' && (c) <= 'Z')
#define islower(c) ((c) >= 'a' && (c) <= 'z')
+#define ispunct(c) ((!isspace(c)) && (!isalpha(c)))
#define ispunct(c) (isprint(c) && (!isspace(c)) && (!isalpha(c)))
+double fabs(double x)
+{
+ return ((x < 0) ? -x : x);
+}
Auch wieder in #ifdef
+// Kuenstliche Begrenzung fuer Programme die sie benutzen wollen
+#define MAXPATHLEN 4096
+
+#endif //ifndef _SYS_PARA;_H_
Tippfehler im Kommentar. ;-)
+/**
+ * Prueft ob die Annahme stimmt. Falls sie das nicht tut, wird mit einer
+ * Fehlermeldung abgebrochen.
+ */
+void _assert(const char* assertation, int expression)
+{
+ if (!expression) {
+ fprintf(stderr, "Annahme fehlgeschlagen: %s\n", assertation);
+ }
+}
+
Das Wort heißt assertion und auf Deutsch Zusicherung. Außerdem muß das
Programm nach Ausgabe der Fehlermeldung durch den Aufruf von abort()
abgebrochen werden.