On Tue, Jan 15, 2002 at 07:20:07AM +0100, Konrad Rosenbaum wrote:
On Monday 14 January 2002 19:05, Eric Schaefer wrote:
Wo schrieb ich was zu "Angriffen"? Wei�t Du was "typsicher" bedeutet? Es ging mir nur darum, da� Funktionen wie, strtof(3) besser darauf achten, was Ihnen da so �bergeben wird, da alle Argumente typisiert sind, was man von einer Ellipse nicht gerade sagen kann. Wenn Du scanf einen Schei�string �bergibst bekommst Du Schei�e zur�ck (Sorry), w�hrend strtof Bescheid sagt, wenn was im Argen ist.
dazu hat GNU C zusaetzliche Regeln, die ihm sagen, was die %-Argumente bedeuten. Schonmal ueber eine Warnung, wie die hier gewundert?: xyz.c line abc: Warning %lf used, but char* given
Nein, hab ich nicht, da ich kein scanf verwende. Abgesehen davon ist das aber nicht portabel (von Compiler zu Compiler). Au�erdem ist scanf bloat wenn es nur um die Konvertierung eines einzigen Wertes geht, schlie�lich mu� der Formatstring interpretiert werden...
Im Uebrigen ist C keine Anfaengersprache und auch nicht fuer Featuritisten geeignet. Wenn Du eine einigermassen saubere, moderne und typsichere Sprache willst nimm Java(**), wenn Du eine fuer Experten geeignete schnelle Sprache willst C/C++, fuer echte Objektorientierung SmallTalk. Sorry, Kompromisse gibts keine (mir sind jedenfalls noch keine guten ueber den Weg gelaufen).
** Er hat JEHOVA gesagt!!! (ich nehm einen gro�en spitzen Stein und 5 kleine abgerundete)
(**)GCC 3.x kann uebrigens auch Java in native Code uebersetzen. Ist sicherlich eine Ueberlegung wert.
Ist das dann schneller als Java-Bytecode? Wieviel langsamer als nativer C-Code?
Gru�, Eric