Poznaj C++ w$ godziny0081

Poznaj C++ w$ godziny0081



Funkcje 67

Program wraca do funkcji main(), do linii 13. Okazuje się, że wartości zmiennych nie są zamienione.

Jak widać, zmienne zostały przekazane do funkcji tylko przez wartość. Zostały stworzone ich lokalne kopie, i na tych kopiach były wykonywane wszelkie operacje. Były to lokalne zmienne funkcji Zamień (). Zamiana została dokonana tylko na kopiach i nie miała żadnego wpływu na wartości zmiennych w funkcji main ().

W dalszej części książki poznasz metody innego przekazywania zmiennych, powodującego zmianę wartości tych zmiennych.

Zwracanie wartości

Funkcje mogą zwracać albo jakąś wartość albo void. voxd to informacja dla kompilatora, że funkcja nie będzie zwracać wartości.

Żeby zwrócić wartość z funkcji, musisz użyć słowa kluczowego return, a następnie podać wartość, która ma zostać zwrócona. Równie dobrze może być to wyrażenie zwracające wartość. Oto przykłady:

return 5;

return (x > 5);

return (MojaFunkcjaO) ;

Wszystkie wymienione instrukcje są poprawne (oczywiście przy założeniu, że funkcja Moj aFunkcja () również zwraca wartość). Wartość zwrócona w drugiej linii, return (x > 5), będzie równa zero jeśli x będzie nie większe niż 5, w przeciwnym wypadku będzie równa 1. To co jest zwracane to wartość wyrażenia, 0 (fałsz) lub 1 (prawda), a nie wartość zmiennej x.

Po napotkaniu słowa kluczowego return wartość wymieniona po return jest zwracana jako wartość funkcji, a program wraca do funkcji wywołującej. Krótko mówiąc, instrukcja return, kończy wykonywanie danej funkcji.

W jednej funkcji można wielokrotnie wykorzystywać instrukcję return. Pamiętaj jednak, że wykonanie instrukcji return powoduje zakończenie funkcji. Listing 5.4. ilustruje ten mechanizm.

Listing 5.4. Wielokrotne użycie instrukcji return

1:

2:

3:

4:

5:

6:

7:

8:

9:

10

11


// Listing 5.4. - wielokrotne użycie // instrukcji return

#include <iostream.h>

int Podwajacz(int kwotaDoPodwojenia);

int main ()

{

int wynik = 0;

Program wraca do funkcji main(), do linii 13. Okazuje się, że wartości zmiennych nie są zamienione.

Jak widać, zmienne zostały przekazane do funkcji tylko przez wartość. Zostały stworzone ich lokalne kopie, i na tych kopiach były wykonywane wszelkie operację. Były to lokalne zmienne funkcji Zamień (). Zamiana została dokonana tylko na kopiach i nie miała żadnego wpływu na wartości zmiennych w funkcji main ().

W dalszej części książki poznasz metody innego przekazywania zmiennych, powodującego zmianę wartości tych zmiennych.

Zwracanie wartości

Funkcje mogą zwracać albo jakąś wartość albo void. void to informacja dla kompilatora, że funkcja nie będzie zwracać wartości.

Żeby zwrócić wartość z funkcji, musisz użyć słowa kluczowego return, a następnie podać wartość, która ma zostać zwrócona. Równie dobrze może być to wyrażenie zwracające wartość. Oto przykłady:

return 5;

return (x > 5);

return (Mo jaFunkc ja {)) ;

Wszystkie wymienione instrukcje są poprawne (oczywiście przy założeniu, że funkcja Mo jaFunkc ja () również zwraca wartość). Wartość zwrócona w drugiej linii, return (x > 5), będzie równa zero jeśli x będzie nie większe niż 5, w przeciwnym wypadku będzie równa 1. To co jest zwracane to wartość wyrażenia, 0 (fałsz) lub 1 (prawda), a nie wartość zmiennej x.

Po napotkaniu słowa kluczowego return wartość wymieniona po return jest zwracana jako wartość funkcji, a program wraca do funkcji wywołującej. Krótko mówiąc, instrukcja return, kończy wykonywanie danej funkcji.

W jednej funkcji można wielokrotnie wykorzystywać instrukcję return. Pamiętaj jednak, że wykonanie instrukcji return powoduje zakończenie funkcji. Listing 5.4. ilustruje ten mechanizm.

Listing 5.4. Wielokrotne użycie instrukcji return

1:    // Listing 5.4. - wielokrotne    użycie

2:    // instrukcji return

3:

4:    (tinclude <iostream.h>

5:

6:    int    Podwajacz(int    kwotaDoPodwojenia);

7:

8:    int    main()

9:    (

int wynik = 0; int wejście;


10 11 12 13


Wyszukiwarka

Podobne podstrony:
Skan1 Skutki somatyczno-slochastyczne nie ograniczają się do chorób nowotworowych. Okazuje się, że
Skan7 Skutki somatyczno-stochastyczne nie ograniczają się do chorób nowotworowych. Okazuje się, że
Czego nie wolno  Nie baw się patyczkami do uszu, bo możesz się skaleczyć! Lekarstwa to nie są cuki
Poznaj C++ w$ godziny0083 Funkcje 69Parametry domyślne Do każdego zadeklarowanego w prototypie i def
Poznaj C++ w$ godziny0004 Spis rozdziałów Część 1 Wstęp do C++ 1 1 Zaczynamy 3 2 Program w C++ 1
Poznaj C++ w$ godziny0073 Funkcje 59Rysunek 5.2 Funkcje 59 Prototyp, pod względem typu wartości zwra
Poznaj C++ w$ godziny0075 Funkcje 61Rysunek 5.3 typ zwracanej wartości
Poznaj C++ w$ godziny0077 Funkcje 63EFEKT DZIAŁANIA: Podaj temperaturę w stopniach Fehrenheit-a: 212
Poznaj C++ w$ godziny0079 Funkcje 65Funkcje jako parametry innych funkcji Mimo że można używać funkc
Poznaj C++ w$ godziny0085 Funkcje 71Przeciążanie funkcji C++ pozwala na stworzenie więcej niż jednej
Poznaj C++ w$ godziny0087 Funkcje 73 27:    int RazyDwa(int zrodło) 28: { 29:  &
Poznaj C++ w$ godziny0089 Funkcje 75 Kiedy wartość jest odkładana na stos, to jest umieszczana w kom
Poznaj C++ w$ godziny0115 102 Godzina 7 Linia 33 w listingu 7.4. rozpoczyna główny blok programu. Aż
Poznaj C++ w$ godziny0006 Spis treści Część I Wstęp do C++    1 1    Z
Poznaj C++ w$ godziny0119 Zaawansowane sterowanie programem 107Pętle while Pętla while pozwala na po
Poznaj C++ w$ godziny0121 Zaawansowane sterowanie programem 109 W liniach 12-15 wprowadzamy wartości
Poznaj C++ w$ godziny0123 Zaawansowane sterowanie programem 111 W linii 32 obliczana jest reszta z d
Poznaj C++ w$ godziny0125 Zaawansowane sterowanie programem Listing 8.6. Pomijanie pętli while 1:

więcej podobnych podstron