K
strdup und stricmp gehören nicht zu ISO-C
Ehrlich? Wußte ich nicht. Lasse mich aber gerne belehren (Referenz?). Im Zweifelsfall kann man die Funktionen ja ganz leicht selbst schreiben.
free fehlt
Wo denn, bitteschön??? Objekte, die ich unter Verwendung von malloc() erzeuge, speichere ich, falls es jemandem entgangen sein sollte, in Listen. Werden diese gelöscht, so werden Funktionen aufgerufen, die ich unter
//etc.
zusammengefaßt hatte!
deinen Header hast Du nicht mitgepostet
Ich hatte geschrieben, daß in dem Header BOOL, FALSE, TRUE, NULL und DECLARE_HANDLE() definiert wird.
Aber bitte, hier die Definitionen:
#define BOOL int
#define FALSE 0
#define TRUE (!FALSE)
#define NULL ((void*) 0)
#define DECLARE_HANDLE(HandleName) typedef struct { int unused; } * HandleName
alles jeweils mit #ifndef und #endif geklammert.
List.h deklariert Funktionen für eine Liste, welche void-Pointer speichert, außerdem die beiden Makros ITERATE_LIST und END_LIST zum durchiterieren durch die Liste. Dachte, das wäre selbsterklärend.
_ gefolgt von Großbuchstaben darfst Du nicht verwenden
E gefolgt von Großbuchstaben auch nicht
struct _TxtFile und END_LIST sollen illegal sein?!?! Mein Compiler hat's zwar ohne Warnung geschluckt, aber wenn dem so ist (Referenz?), dann muß man sich natürlich an diese schwachsinnige Regel halten. Ich lasse mich, wie gesagt, gern belehren.
Blieben noch die tausende Typen
Ja, die führte man ein, um Programme besser verstehen zu können. Bitte sag nicht, daß typedef und #define neuerdings auch illegal sind!
die Casts
Sehr witzig: HTXTFILE caste ich IMMER auf TxtFile* und umgekehrt, weil man genau damit die Trennung zwischen Deklaration und Implementation erreicht. Schon mal was von modularer Programmierung gehört?
Und meine Liste speichert void-Pointer, damit sie unabhängig von den gespeicherten Objekten gehalten und somit wiederverwendet werden kann.
Außerdem bezweifle ich stark, daß diese Casts illegal sind.
die Notation
??? Meinst Du vielleicht die //-Kommentare? Wenn's der Compiler wirklich nicht schluckt, kann man die ja auch leicht ersetzen. Oder was ist denn sonst an der Notation auszusetzen?
Noch was?
Jawohl, und zwar soll man bei der Software-Erstellung folgendes berücksichtigen:
Programme sollen
- ihren Zweck erfüllen
- sicher laufen
- gut verständlich und wartbar sein
- sowie durch Einbeziehung wiederverwendbarer Module schnell entwickelt werden!
[ Dieser Beitrag wurde am 16.04.2003 um 08:24 Uhr von Krösus editiert. ]