Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- const int ROZMIAR{ 5 };
- void wypelnijTablice(int* tab) { // tablice jednowymiarowe przekazujemy do funkcji w argumencie jako [typ_zmiennej]* (z gwiazdką)
- for (auto i{ 0 }; i < ROZMIAR; ++i) {
- tab[i] = i;
- }
- }
- // UWAGA: tablice są przekazywane do funkcji przez referencję (przekazywany jest faktyczny obiekt, a nie tylko jego wartość)
- void podwojWartosciTablicy(int* tab) {
- for (auto i{ 0 }; i < ROZMIAR; ++i) {
- tab[i] *= 2;
- }
- }
- void podwojWartosc(int liczba) { // tutaj tworzona jest zmienna lokalna (!) o nazwie liczba, pobiera ona taką wartość jaką podaliśmy przy wywołaniu funkcji
- liczba *= 2; // zmienna lokalna zwiększa swoją wartość dwukrotnie
- std::cout << liczba << std::endl; // wypisujemy wartość zmiennej lokalnej utworzonej wewnątrz tej funkcji (jej wartość jest 2x większa niż wartość przekazana do funkcji)
- } // zmienna lokalna jest niszczona
- int main() {
- int tablica[ROZMIAR]; // deklaracja tablicy bez inicjalizacji
- wypelnijTablice(tablica);
- // wypisanie na ekran wypełnionej tablicy:
- for (auto i{ 0 }; i < ROZMIAR; ++i) {
- std::cout << tablica[i] << '\t';
- }
- std::cout << std::endl;
- podwojWartosciTablicy(tablica);
- // wypisanie na ekran tablicy z podwojonymi wartościami:
- for (auto i{ 0 }; i < ROZMIAR; ++i) {
- std::cout << tablica[i] << '\t';
- }
- std::cout << std::endl;
- auto liczba{ 8 };
- std::cout << liczba << std::endl; // wypisujemy na ekran wartość zmiennej liczba (8)
- podwojWartosc(liczba); // wywołujemy funkcję dla wartości równej 8 (aktualna wartość zmiennej liczba)
- std::cout << liczba << std::endl; // wypisujemy na ekran wartość zmiennej liczba (ta sama, która była przed wywołaniem funkcji, bo funkcja korzystała z jej wartości, a nie samej zmiennej)
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement