C ist genauso wenig eine Skriptsprache.Zitat von cornuto
Nein. int ist und bleibt Standard. Alles andere ist MS-C-Mist.Zitat von vivalaleche
C ist genauso wenig eine Skriptsprache.Zitat von cornuto
Nein. int ist und bleibt Standard. Alles andere ist MS-C-Mist.Zitat von vivalaleche
--Abwesend.
Exakt. Man sollte unter keinen Umständen Microsotfs Methoden mit dem Standard verwechseln.Zitat von Dingsi
Zum Thema "Skriptsprache": Das mit den Rückgabewerten hat durchaus seinen Sinn. Nehmen wir mal folgendes Grundproblem: Ich habe einen Haufen Rechner, in denen eine Festplatte durch ein neueres Modell ausgetauscht und die Daten gelöscht werden sollen, nachdem sie archiviert wurden.
Kein Problem; ich erstelle mir ein Skript, das zuerst den Inhalt der alten Festplatte in ein Archiv auf der neuen Platte schreibt. Anschließend wird der Inhalt der alten Festplatte gelöscht.
Der Haken: Das Skript muß wissen, ob das Archiv auch korrekt erstellt wurde. Wenn es einen Fehler nicht erkennt und einfach beim nächsten Schritt weitermacht kann ruck zuck der Inhalt einer Festplatte verschwinden.
Mit Rückgabewerten ist das kein Problem: Ich überprüfe einfach den Rückgabewert jedes aufgerufenen Programms und breche ab, wenn er ungleich 0 ist. Wenn ich eine mächtige Shell wie bash benutze geht das sogar in einer Zeile:
tar -cjf /mnt/platte2/archiv.tar /mnt/platte1/* && rm -rf /mnt/platte1/*
Wenn tar einen Fehler hat wird rm gar nicht erst ausgeführt, was für die Daten sehr gesund ist.
Ohne Rückgabewerte müßte ich nach dem Erstellen jedes Archiv einmal durchgehen und nachsehen, ob auch alle Dateien drin sind, die reinsollen. Unter Umständen ließe sich der Vorgang mit Standardmitteln nicht automatisieren, was für einen relativ einfachen computergestützten Algorithmus absolut lächerlich ist.
Die C-artige Skriptsprache wäre übrigens Ch.
@masterquest: Da dummerweise nicht mal atof in der Lage ist, für einen nichtnumerischen String NaN zurückzugeben, mußt du wohl irgendeinen Workaround finden... Zum Beispiel kannst du den String Zeichen für Zeichen durch isdigit() jagen. isdigit() findest du in ctype.h.
Geändert von Jesus_666 (24.11.2004 um 20:58 Uhr)