1. Wyjaśnij co to jest i do czego służy prototyp funkcji w języku C++.
2. Wymień ważne zasady i cechy referencji.
3. Wyjaśnij w jaki sposób deklaruje i inicjuje się zmienne wskaźnikowe.
4. Wyjaśnij w jaki sposób odwołujemy się do struktury za pomocą zwykłej zmiennej w języku c++
5. Wyjaśnij w jaki sposób wskaźniki ułatwiają prace z tablicami w języku C++
" Life is not a problem to be solved but a reality to be experienced! "
© Copyright 2013 - 2025 KUDO.TIPS - All rights reserved.
Witam!
Ad.1:
Prototyp funkcji zwany również deklaracją jest przedstawieniem informacji o sygnaturze funkcji - nazwie, typowi argumentów i wartość zwracanej.
Pozwala to na wywołanie funkcji przed jej definicją.
Wyglądać to może tak:
int Suma(int a, int b); //Prototyp funkcji
int main()
{
std::cout<<Suma(10, 27);
}
int Suma(int a, int b) //definicja funkcji (ciało)
{
return a + b ;
}
Głównym celem stosowania prototypów funkcji jest poprawa czytelność kodu - deklaracje funkcji można umieścić w pliku z funkcją main a definicję funkcji w innym pliku.
Ad.2:
Referencja jest aliasem (przezwiskiem) dla obiektu. Referencja nie może być deklarowana - musi zostać od razu zdefiniowana tj. od razu należy zastosować przypisanie (referencja musi zostać zainicjalizowana w miejscu utrzownia.
Przykład definicji referencji dla obiektu typu int:
int zmienna;
int &ref = zmienna;
Referencja pozwala na modyfikację i pokazywanego przez siebie obiektu. Ta cecha wykorzystana jest w procesie który nazywa się przekazywaniem przez referencję argumentów do funkcji. W tym zastosowania referencja miała zastąpić proces przekazywania przez adres (wskaźnik). Ważną cechą referencji jest jest stałość.
Ad 3. deklaracja zmiennej wskaźnikowej przypomina deklarację każdej inne zmiennej - z tym, że przed nazwą musi pojawić się znak gwiazdki (*).
Deklaracja wskaźnika do pokazywania na obiekty typu double i char:
double* wsk;
char* wsk2;
Definicja wskaźnika polega na przypisaniu do wskaźnika adresu obiektu na który na pokazywać. Do wyłuskania adresu służy operator &.
int i;
int *wsk = &i;
Ad4.
Do składowej struktury odwołujemy się za pomocą operatora kropki.
struct XXX
{
public:
int wiek;
}
XXX ktos;
ktos.wiek = 18;
Ad5. Nazwa tablicy jest wskaźnikiem na pierwszy element tablicy.
Kompilator zamienienia sobie zapis tablicowcy na wskaźnikowy stąd:
jeśli mamy tablicę:
int tab[5] = {1, 2, 3, 4, 5};
to jeśli napiszemy:
std::cout<<tab[3];
kompilator zamieni to sobie na:
std::cout<<*(tab + 3)