C programozásban mi különbség az "int" és a "void" között?
A függvény neve előtt lévő típusú értéket fogja visszaadni a függvény. Ha a main előtt int van, akkor progi lefutása után egy int értéket ad vissza az operációs rendszernek, ilyenkor illik "return valami;" utasítással zárni a kódot. Szerintem inkább ezt szokd meg.
A void nem szabványos megoldás, de sok fordító elfogadja.
Ahogy a második válaszoló írta, az int main() egy integert fog visszaadni, a void main() pedig semmit.
Gyakorlati példa, hogy értsd, miért van erre lehetőség egyáltalán. Írsz pl egy olyan függvényt, ami összead két számot, ha szeretnéd az eredményt felhasználni valahol, akkor így néz ki a függvényed
int osszeadas(int a, int b)
Ha pedig csak össze akarod adni őket, de az eredményre nincs szükséged(ilyen gyakorlati helyzet így hirtelen nem jut eszembe, de mondjuk ha egy hangot akarnál lejátszani, akkor nem feltétlenül lenne szükséged visszatérési értékre) az pedig így nézne ki
void osszeadas(int a, int b)
'Ha a main előtt int van, akkor progi lefutása után egy int értéket ad vissza az operációs rendszernek, ilyenkor illik "return valami;" utasítással zárni a kódot.'
Automatikusan 0 ertekkel ter vissza ha lehagyod, szemely szerint en sem irom ki.
Igen, ezért is fogalmaztam úgy, hogy "illik". :)
Ha másért nem, legalább a különböző fordítók miatt, hogy mindegyikkel ugyanúgy forduljon le. Mondjuk ez már tényleg csak szőrszálhasogatás. :))
Egyébként ezt most nem tudom biztosan, de ha jól gondolom "void main()" esetén is implicit visszaad egy nulla értéket, fordítótól és op.rendszertől függően.
"using void main is unsafe and can potentially do evil things to your program. It is best to avoid it. "
Ettől még biztos mond jó dolgokat is, próbáld kiszűrni a lényeget, vagy legalábbis fenntartásokkal fogadni, amit mond.
:)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!