Keresés

Új hozzászólás Aktív témák

  • kispx

    addikt

    válasz Dave-11 #1820 üzenetére

    Vannak olyan függvények amiknek nem kell visszaadnia értéket csupán csak valamit meg kell csinálniuk. (pl. clearerr) Ezeket eljárásoknak is nevezik.

    C/C++-ban nincs külön kulcsszó a függvények és az eljárások megkülönböztetésére. C-ben ha eljárást szeretnénk csinálni akkor a visszatérési típusnak void-nak kell lennie. Ezzel jelezzük a fordítónak, hogy valójában semmit sem fog visszaadni a függvény. Egy ilyen függvényben értéket nem adhatunk vissza (pl.: return 1; ) mert ez fordítási hibához vezet. Viszont használhatjuk függvényből való visszatérésre a return; utasítást. (A függvényt lezáró kapcsos zárójel elé nem kötelező kitenni)

    void f () { //.... }
    az függvényt így hívjuk meg:
    //...
    f(); //változónak nem adhatunk vele értéket

    int g() { //.... return valami; }
    a g függvényt így hívhatjuk meg:
    int x = g(); //a g() visszatérési értékét az x változónak adjuk át
    g(); // a g() visszatérési értékét minek sem adjuk át, így ez az érték elveszlik

    Szerk.:

    "void Osztaly::Tag(){...}
    Mondjuk ebben kiszámítok valamit, és a végére odaírom hogy: return vegeredmeny; Akkor hogy-hogy nem tér vissza semmi?"

    Az fordítási hibához vezet.

    (#1821) dabadab
    Régebben volt kezemben egy ősköri C++ fordító, ott lehetett main-nak void visszatérési értéke

Új hozzászólás Aktív témák