Eredmény értékek, programozás C és C

Minden funkció kivéve azokat a funkciókat, mint a void visszatérési értékeket. Ez az érték határozza meg a bevallását. Ha ez a funkció, amely nem minősül semmisnek, és hacsak visszatérési érték kerül visszaadásra törmeléket. Ha ez a funkció nem nyilvánították érvénytelennek, akkor lehet használni, mint egy operandus bármilyen érvényes kifejezés. Következésképpen az egyes alábbi állítások helyességét:

ha (max (x, y)> 100) printf ( "nagyobb");

a (ch = getchar (); isdigit (CH);). ;

Természetesen a funkció nem tudja állni a bal oldalon értékadó operátor. típusú operátor

csere (x, y) = 100; / * Érvénytelen operátor * /

rossz. A fordítóprogram hibát generál.

Ha a funkció nyilvánították érvénytelennek, akkor nem lehet használni a kifejezéseket. Tegyük fel például, hogy az f () nyilvánították semmisnek. Az alábbi állítások nem fordul le:

int t;
t = f (); / * Nem-érték t * hozzárendelés /
f () + F (); / * Nem értéket hozzáadni * /

Bár nem az összes funkciót egy void visszatérési értéke, ha írásban programok általában háromféle funkciót. Az első típus - egy olyan számítási funkció. Úgy tervezték, hogy műveleteket hajtson végre az érveket és visszaad egy értéket alapul ezeket a műveleteket. Példák az ilyen funkciók sqr () és sin () - standard könyvtár funkció.

A következő típusú funkció feldolgozza az információkat, és visszaad egy értéket, amely jelzi, hogy a munka sikeres, vagy hibát eredményezett. Ennek egyik példája a fwrite () - függvény használnak, hogy információt egy fájlban. Ha a bejegyzés sikeres volt, fwrite () visszaadja a tételek számát sikeresen rögzítette. Ha hiba történik, a visszatérő száma nem egyenlő a tételek számát kérte írandó.

Az utolsó típusa a funkció nincs meghatározott visszatérési értéke. A funkció egy rutin eljárás, és nem ad értéket. Erre példa a srand (), arra használjuk, hogy inicializálja a véletlenszám rand () függvény. Néha funkciókat nem kibocsátó értelmes eredményt, hogy néhány még mindig. Például a printf () visszaadja a karakterek száma nyomtatva. Nagyon nehéz megtalálni a program, amely ellenőrzi azt. Ezért, bár kivételével az összes funkció funkciók nyilvánították érvénytelennek, visszatérési értéke is van, nem kell használni az összes ezeket az értékeket. Egy tipikus kérdés a függvény visszatérési értéke „Nem kellene rendelni a változó értékét az érték jön vissza?” Válasz: „Nem”. Ha nincs megadva, amely hozzá van rendelve a visszatérési érték, akkor egyszerűen elmarad. Tekintsük a következő programot használva mul ():

int mul (int a, int b);

int mul (int a, int b)
vissza a * b;
>

1. sor készletek által visszaadott mul () értéke a z változó. A 2. sor, a visszatérési érték nem használjuk közvetlenül, hanem azt használják közvetetten printf () függvény. Végül a 3. sorban, a visszatérési érték elvész, mivel nem adunk értéket a változó, és azt is, hogy nem használják sem a kifejezéseket.

Kapcsolódó cikkek