011
02.04.2003, 14:22 Uhr
virtual
Sexiest Bit alive (Operator)
|
@dirweis Es ist egal, ob man
C++: |
char *blah; /* Leerzeichen vor * */ char* blub; /* Leerzeichen nach * */
|
schreibt (egal ob man nun Variablen, Parameter, Rückgabetypen... betrachtet). Ich bevorzuge die letztere Variante, weil ich das * für einen Bestandteil des typen und nicht der Variable halte. Allerdings gibt es auch ein wesentliches Gegenargument zu der von mir bevorzugten Schreibweise:
Da wird eine Variable a vom type char* und eine Varaible b vom typ char (ohne Stern) vereinbart. Dh. wenn man solche Deklarationen hat, kommt man nicht umhin zu schreiben:
Möglicherweise hast Du sowas im Hinterkopf gehabt... Ich vermeidet übrigens solche Deklarationen genau aus og Grund. Auch Geschmackssache...
Im obigen Beispiel sind folgende Ausdrücke äquivalent:
C++: |
str+start &str[start]
|
@Adi Das free ist notwendig, weil zu jedem malloc/realloc ein free da sein sollte. Daher hat der 2. Ansatz auch ein Speicherloch, welches auch richtig stören kann, wenn man auf einen System arbeitet, daß bei Prozessende nicht richtig aufräumt (zB MSDOS). Daß Du einen Fehlerbekommst, kann ich von meiner Warte nicht nachvollziehen, hast Du das Programm unverändert übernommen, dann würde ich erwarten, daß es bei dir wie es auch mir läuft: fehlerfrei. -- Gruß, virtual Quote of the Month Ich eß' nur was ein Gesicht hat (Creme 21) |