Hallo, On Sun, 22 Jun 2003 at 12:27 (+0200), Arndt Stedler wrote:
Wenn du bisher BASIC Programmiert hast, wirst du die Notwendigkeit nicht so schnell einsehen. Als Tip: Schau dir mal JAVA an: Java kennt keine Globalen Variablen!
Java kennt statische Klassenvariablen. Wenn Du nur in einer Klasse programmierst (in der, in der sich die main-Methode befindet), jede Funktion statisch machst und mit statischen Klassenvariablen arbeitest, hast Du das selbe in gruen. Sowas wie eine globale Varialbe in C++ (wo es ja auch Klassen gibt) und globale Funktionen gibt es allerdings in Java nicht.
Ach so, zum Rückgabewert: In C kommt dieser, sofern er passt in einem oder mehreren Prozessorregistern zurück. Das ist der Grund, warum du auch keine Strukturen als Rückgabeparameter nehmen kannst sondern nur Referenzen oder Pointer.
Stimmt so nicht. Auch in C kannst Du eine struct und eine union zurueckgeben (nein, keinen Zeiger darauf), allerdings ist das modernes C und kein altes C. Auch der Zuweisungsoperator ist auf Strukturen definiert. Ein saudummes Beispiel: struct zeit { int stunde; int minute; int sekunde; }; struct zeit demo () { struct zeit meinezeit = { 1, 2, 3 }; return meinezeit; } int main (int argc, char *argv[]) { struct zeit nocheinezeit; nocheinezeit = demo(); printf("Std: %d\nMin: %d\nSek: %d\n", nocheinezeit.stunde, nocheinezeit.minute, nocheinezeit.sekunde); return 0; } Gruss, Bernhard -- _________ http://www.bwalle.de _________________________________________________ "Nachrichtensprecher fangen stets mit 'Guten Abend' an und brauchen dann 15 Minuten, um zu erklären, dass es kein guter Abend ist." -- Rudi Carrell