C++ Funkcje z przykładami programów

Czym jest funkcja w C++?

A funkcjonować in C++ odnosi się do grupy instrukcji, które pobierają dane wejściowe, przetwarzają je i zwracają dane wyjściowe. Ideą funkcji jest łączenie typowych zadań, które są wykonywane wielokrotnie. Jeśli masz inne dane wejściowe, nie napiszesz ponownie tego samego kodu. Po prostu wywołasz funkcję z innym zestawem danych zwanym parametrami.

Każdy C++ program ma co najmniej jedną funkcję, funkcję main(). Możesz podzielić swój kod na różne funkcje. Podział ten powinien być taki, aby każda funkcja spełniała określone zadanie.

Istnieje wiele wbudowanych funkcji w programie C++ biblioteka standardowa. Możesz wywołać te funkcje w swoim programie.

Po co używać funkcji?

Z wykorzystaniem funkcji wiąże się wiele korzyści. Obejmują one:

  • Każda funkcja łączy powiązany kod. Ułatwia to programistom zrozumienie kodu.
  • Funkcje ułatwiają programowanie, eliminując powtarzanie kodu.
  • Funkcje ułatwiają ponowne wykorzystanie kodu. Możesz wywołać tę samą funkcję, aby wykonać zadanie w różnych sekcjach programu lub nawet poza programem.

Wbudowane funkcje

In C++ funkcje biblioteczne są wbudowane C++ funkcje. Aby skorzystać z tych funkcji, wystarczy je bezpośrednio wywołać/wywołać. Nie musisz sam pisać funkcji.

1 przykład:

#include <iostream>
#include <cmath>
using namespace std;
int main() {
	double num, squareRoot;
	cout << "Enter number: ";
	cin >> num;
	squareRoot = sqrt(num);
	cout << "The square root of " << num << " is: " << squareRoot;
	return 0;
}

Wyjście:

Wbudowane funkcje

Oto zrzut ekranu kodu:

Wbudowane funkcje

Wyjaśnienie kodu:

  1. Dołącz plik nagłówkowy iostream do naszego programu, aby móc korzystać z jego funkcji.
  2. Dołącz bibliotekę cmath, aby móc korzystać z jej funkcji. Chcemy skorzystać ze zdefiniowanej w nim funkcji sqrt().
  3. Dołącz przestrzeń nazw std do naszego kodu, aby używać jej klas bez wywoływania jej.
  4. Wywołaj funkcję main(). Logikę programu należy dodać w treści tej funkcji.
  5. Zadeklaruj dwie zmienne typu double, num i squareRoot.
  6. Wydrukuj tekst na konsoli. Tekst prosi użytkownika o wprowadzenie numeru.
  7. Odczytaj dane wprowadzone przez użytkownika z klawiatury. Dane wejściowe staną się wartością zmiennej num.
  8. Wywołaj funkcję biblioteczną sqrt(), która oblicza pierwiastek kwadratowy z liczby. Przekazaliśmy parametr num do funkcji, co oznacza, że ​​obliczy ona pierwiastek kwadratowy z num. Ta funkcja jest zdefiniowana w bibliotece cmath.
  9. Wydrukuj liczbę wprowadzoną przez użytkownika, jej pierwiastek kwadratowy i inny tekst na konsoli.
  10. Program musi zwrócić wartość po pomyślnym zakończeniu.
  11. Koniec treści funkcji main().

Funkcje zdefiniowane przez użytkownika

C++ pozwala programistom definiować własne funkcje. Celem funkcji jest grupowanie powiązanego kodu. Następnie kod otrzymuje unikalny identyfikator, nazwę funkcji.

Funkcję można wywołać/wywołać z dowolnej innej części programu. Następnie wykona kod zdefiniowany w swoim ciele.

2 przykład:

#include <iostream>
using namespace std;

void sayHello() {
	cout << "Hello!";
}

int main() {

	sayHello();

	return 0;
}

Wyjście:

Funkcje zdefiniowane przez użytkownika

Oto zrzut ekranu kodu:

Funkcje zdefiniowane przez użytkownika

Wyjaśnienie kodu:

  1. Dołącz plik nagłówkowy iostream do naszego programu, aby móc korzystać z jego funkcji.
  2. Dołącz przestrzeń nazw std do naszego kodu, aby używać jej klas bez wywoływania jej.
  3. Utwórz funkcję zdefiniowaną przez użytkownika o nazwie sayHello().
  4. Wydrukuj tekst na konsoli po wywołaniu funkcji sayHello().
  5. Koniec treści funkcji sayHello().
  6. Wywołaj funkcję main(). Logikę programu należy dodać w treści tej funkcji.
  7. Wywołaj/wywołaj funkcję o nazwie sayHello().
  8. Program musi zwrócić wartość po pomyślnym zakończeniu.
  9. Koniec treści funkcji main().

Deklaracja funkcji/prototyp

Jeśli po funkcji main() zdefiniujesz funkcję zdefiniowaną przez użytkownika, funkcja C++ kompilator zwróci błąd. Powodem jest to, że kompilator nie zna szczegółów funkcji zdefiniowanej przez użytkownika. Szczegóły obejmują jej nazwę, typy argumentów i ich typy zwracane.

In C++, deklaracja/prototyp funkcji deklaruje funkcję bez ciała. Daje to kompilatorowi szczegóły funkcji zdefiniowanej przez użytkownika.

Deklaracja funkcji/prototyp

W deklaracji/prototypie podajemy typ zwracany, nazwę funkcji i typy argumentów. Nazwy argumentów nie są dodawane. Jednak dodanie nazw argumentów nie generuje błędu.

Definicja funkcji

Celem deklaracji funkcji jest poinformowanie funkcji C++ kompilator o nazwie funkcji, typie zwracanym i parametrach. Definicja funkcji mówi C++ kompilator o treści funkcji.

Definicja funkcji/prototyp

Składnia

return_datatype function_name( parameters) {
   function body 
}

Z powyższego wynika, że ​​definicja funkcji ma nagłówek i treść funkcji. Oto wyjaśnienie parametrów:

  • return_datatype — Niektóre funkcje zwracają wartość. Ten parametr określa typ danych zwracanej wartości. Niektóre funkcje nie zwracają wartości. W takim przypadku wartość tego parametru staje się nieważna.
  • nazwa_funkcji — jest to nazwa funkcji. Nazwa funkcji i parametry tworzą sygnaturę funkcji.
  • Parametry — jest to typ, kolejność i liczba parametrów funkcji. Niektóre funkcje nie mają parametrów.
  • ciało funkcji – są to instrukcje określające, co funkcja będzie robić.

Wywołanie funkcji

Aby funkcja mogła wykonać określone zadanie i zwrócić wynik, musi zostać wywołana. Kiedy wywołujesz funkcję, wykonuje ona instrukcje dodane w jej treści.

Wywołanie funkcji

Program nazywa się po nazwie. Jeżeli funkcja przyjmuje parametry, to w trakcie wywołania należy przekazać ich wartości. Jeśli usługa nie przyjmuje żadnych parametrów, nie przekazuj żadnej wartości podczas wywołania.

Przekazywanie argumentów

In C++, argument/parametr to dane przekazywane do funkcji podczas jej wywołania. Wartości muszą zostać zainicjowane odpowiednimi zmiennymi.

Podczas wywoływania funkcji liczba argumentów musi być zgodna. Oznacza to, że przekazywane wartości muszą być równe liczbie parametrów. Ponownie wartości muszą również odpowiadać parametrom pod względem typu. Jeżeli pierwszy parametr jest liczbą całkowitą, przekazana do niego wartość musi być liczbą całkowitą.

Do parametrów funkcji można przypisać wartości domyślne. Jeśli podczas wywołania funkcji nie przekażesz wartości parametru, zostanie użyta wartość domyślna.

Przykład 3: Jak napisać i wywołać funkcję

#include <iostream>
using namespace std;
int addFunc(int, int);
int main() {
	int x, y, sum;
	cout << "Enter two numbers: ";
	cin >> x >> y;
	sum = addFunc(x, y);
	cout <<"The sum of "<<x<< " and " <<y<<" is: "<<sum;
	return 0;
}
int addFunc(int num1, int num2) {
	int addFunc;
	addFunc = num1 + num2;
	return addFunc;
}

Wyjście:

Przekazywanie argumentów

Oto zrzut ekranu kodu:

Przekazywanie argumentów

Wyjaśnienie kodu:

  1. Dołącz plik nagłówkowy iostream do naszego programu, aby móc korzystać z jego funkcji.
  2. Dołącz przestrzeń nazw std do naszego kodu, aby używać jej klas bez wywoływania jej.
  3. Zadeklaruj funkcję o nazwie addFunc(), która przyjmuje dwa parametry całkowite. W ten sposób powstaje prototyp funkcji.
  4. Wywołaj funkcję main(). Logikę programu należy dodać w treści tej funkcji.
  5. Zadeklaruj trzy zmienne całkowite: x, y i sumę.
  6. Wydrukuj tekst na konsoli. Tekst prosi użytkownika o wprowadzenie dwóch liczb.
  7. Odczytaj dane wejściowe użytkownika z klawiatury. Użytkownik powinien wprowadzić dwie liczby dla zmiennych x i y, oddzielone spacją.
  8. Wywołaj funkcję addFunc() i przekaż jej parametry x i y. Funkcja będzie działać na tych parametrach i przypisze dane wyjściowe do zmiennej sum.
  9. Wydrukuj wartości zmiennych x, y i sumę na konsoli wraz z innym tekstem.
  10. Funkcja musi zwracać wartość po pomyślnym zakończeniu.
  11. Koniec treści funkcji main().
  12. Definicja funkcji. Definiujemy funkcję addFunc(). Określimy, co funkcja będzie robić w swoim ciele, czyli { }.
  13. Deklarowanie zmiennej całkowitej o nazwie addFunc.
  14. Dodanie wartości parametrów num1 i num2 i przypisanie wyniku do zmiennej addFunc.
  15. Funkcja addFunc() powinna zwrócić wartość zmiennej addFunc.
  16. Koniec treści funkcji, czyli definicji funkcji.

Podsumowanie

  • Funkcja w C++ pomaga grupować powiązany kod w jeden.
  • Funkcje ułatwiają ponowne wykorzystanie kodu.
  • Zamiast ciągle pisać podobny kod, po prostu grupujesz go w funkcję. Następnie możesz wywołać funkcję z dowolnego miejsca w kodzie.
  • Funkcje mogą być zdefiniowane w bibliotece lub przez użytkownika.
  • Funkcje biblioteczne to różne funkcje wbudowane C++ Funkcje.
  • Aby skorzystać z funkcji bibliotecznych, wystarczy dołączyć bibliotekę definicji i wywołać funkcję. Nie definiujesz funkcji.
  • Funkcje zdefiniowane przez użytkownika to funkcje, które definiujesz jako a C++ programista.
  • Deklaracja funkcji informuje kompilator o nazwie funkcji, typie zwracanym i typach parametrów.
  • Definicja funkcji dodaje treść funkcji.
  • Jeżeli funkcja przyjmuje parametry, to podczas wywołania funkcji należy przekazać ich wartości.

Podsumuj ten post następująco: