float main() ?



  • Morgen wofür steht diese Funktion?
    Bisher kannte ich nur int main()
    und dann auch nur ohne Parameter

    float main(int, float,char) 
    {
    
    }
    


  • Das ist kein C++.
    main ist reserviert als der Einstiegspunkt und hat die Signatur:

    int main ()
    

    oder

    int main(int argc, char* argv[])
    


  • Wo hast du diese Deklaration denn her??



  • c++++ schrieb:

    Morgen wofür steht diese Funktion?

    float main(int, float,char)
    

    Es kann sein, das manche Compiler dies als normale Funktion durchgehen lassen (neben der int main(...)), falsch wäre es dennoch. Und wofür die Funktion steht? Keine Ahnung, da schlechte Bennenung.



  • In der Aufgabe stand drin:

    Analysieren sie:

    float main(int, float,char) 
    { 
    
    }
    

    1. Wofür steht das erste float?

    2. Wofür steht das zweite float?

    3. Wofür stehen die geschweiften Klammern.

    int ist ja ein ganz zahliger Datentyp.

    float für Kommazahlen und char für Zeichen.

    Die Klammern sind ja dafür da um zu sehen wo das Programm Anfängt und wo es endet.

    Aber wie soll ich das für diese Funktion oder was auch immer das ist beschreiben ? 😕

    Ist das so richtig wie ich es gemacht habe ?



  • Na ja, die wollen wohl darauf hinaus, dass du erklärst, dass das erste float der Rückgabewert der Funktion (ja, das ist eine!) ist. Die weiteren sind Parameter/Argumente, die die Funktion übergeben kriegt. floats sind Fließkommazahlen mit einfacher Genauigkeit (genauer wäre dann double). Dass in der Aufgabe als Funktionsname ausgerechnet main genommen wurde, ist schon ein Hammer. es sei denn, du sollst ebenfalls erwähnen, dass die Definition der main-Funktion in C++ anders ist und das Beispiel somit nicht standard-konform ist.



  • asc schrieb:

    Es kann sein, das manche Compiler dies als normale Funktion durchgehen lassen (neben der int main(...)), falsch wäre es dennoch. Und wofür die Funktion steht? Keine Ahnung, da schlechte Bennenung.

    Ich würde eher sagen, dass diese Funktion *die* main-Funktion ist, weil main nicht überladen werden kann. Dass das undefiniertes Verhalten ergibt ist ja erstmal egal, auf den üblichen Plattformen müsste das sich zumindest übersetzen lassen und laufen.



  • Bashar schrieb:

    Ich würde eher sagen, dass diese Funktion *die* main-Funktion ist, weil main nicht überladen werden kann. Dass das undefiniertes Verhalten ergibt ist ja erstmal egal, auf den üblichen Plattformen müsste das sich zumindest übersetzen lassen und laufen.

    Von müssen sollte nicht die rede sein. Es wäre völlig legitim, wenn sich das nicht übersetzen liesse.. (Was es aber leider unter VC++ tut..)





  • Und ich dachte,die Leute hier wären etwas klüger und würden nicht auf so schlechte Trollposts reinfallen.


Anmelden zum Antworten