Wykład (4) - Potwierdzenie

Nasza ocena:

3
Pobrań: 14
Wyświetleń: 595
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Wykład (4) - Potwierdzenie - strona 1 Wykład (4) - Potwierdzenie - strona 2 Wykład (4) - Potwierdzenie - strona 3

Fragment notatki:

Funkcja → wysoce niezaleŜny blok definicji i instrukcji programu (podprogram)
KaŜdy program napisany w języku C/C++ zawiera przynajmniej jedną funkcję
o predefiniowanej nazwie: main( ). Najczęściej wykorzystuje się równieŜ wiele
innych predefiniowanych funkcji np. printf(...), scanf(...), abs(...), sin(...), itp.
MoŜna równieŜ definiować nowe−własne funkcje.
Składnia definicji funkcji:
zwracany_typ NAZWA_FUNKCJI ( lista parametrów )
{
instrukcja lub sekwencja instrukcji ;
}
przykład:
int MAX ( int liczba_1 , int liczba_2 )
{
if( liczba_1 liczba_2 )
return liczba_1 ;
else
return liczba_2 ;
}

lista parametrów moŜe być pusta
lub zawierać opisy kolejnych parametrów (pooddzielane przecinkami):
main( )

main( void )
main( int argc , char∗ argv[ ] )
parametry definiowane są tak jak zmienne.
Uwaga: nie moŜna grupować sekwencji parametrów tego samego typu:
← źle !
int MAX ( int liczba_1, liczba_2, liczba_3 )

„ciało” funkcji jest zawarte pomiędzy nawiasami: { ... }
(bez średnika na końcu)

działanie funkcji kończy się po napotkaniu polecenia return
lub po wykonaniu sekwencji wszystkich instrukcji zawartych w ciele funkcji,

jeŜeli funkcja jest typu void, to uŜywamy samego słowa return,
bez Ŝadnego wyraŜenia po nim,

jeŜeli funkcja jest typu innego niŜ void to po poleceniu return musi się pojawić
wyraŜenie odpowiedniego typu (moŜe być w nawiasach), np.:
return liczba_1;
M.Piasecki: JĘZYKI PROGRAMOWANIA 1
lub
−1−
return( liczba_1 ) ;
(W6) Definiowanie własnych funkcji
1) program bez pod-funkcji
2) funkcje bezparametrowe
3) funkcje z jawnymi parmetrami
#include
#include
#include
int a,b,c,suma;
float srednia;
int a,b,c,suma;
float srednia;
void main(void)
{
void WCZYTAJ(void)
{
coutabc;
}
void WCZYTAJ(int& x, int& y, int&z)
{
coutxyz;
}
//--- wczytaj dane --coutabc;
//--- policz wartości --suma = a+b+c;
srednia = suma/3.0;
//--- wyświetl wyniki --cout

(…)

… C++ parametry mogą być przekazywane przez wartość lub przez referencję
Typ referencyjny →
zmienne tego typu nie zajmują nowego miejsca w pamięci,
słuŜą do reprezentacji innych zmiennych w programie.
nazwa_typu nazwa_zmiennej;

utworzenie zwykłej zmiennej
nazwa_typu & nazwa_zmiennej_referencyjnej = nazwa_zmiennej;
(jest to zdefiniowanie aliasu − innej nazwy dla tej samej zmiennej)
przykład
int wzrost;
int sredni_wzrost = wzrost;
int& wysokosc = wzrost;
wysokosc = wysokosc + 1;
// utworzenie zmiennej referencyjnej
// związanej z tym samym obszarem
// pamięci co wzrost
// równowaŜne: wzrost = wzrost + 1
przykład e)
void posortuj_3 ( double & a, double & b )
{
double buf;
// przekazywanie parametrów
if( a > b)
// przez referencję
{
buf = a;
// a i b są referencyjnymi nazwami x i y
a = b;
b = buf…
…( &i , 0, sizeof( i ) );
memset( &i , 1, sizeof( i ) );
memset( tab , 0, sizeof( tab ) );
// równowaŜne: i = 0
// równowaŜne: i = 257 = 1∗256 + 1
// wypełnienie tablicy zerami
void ∗memcpy ( void ∗wsk_dokąd, void ∗wsk_skąd, size_t dlugosc )
( „memory copy” → skopiowanie dlugosc bajtów spod adresu wsk skąd pod adres wsk dokąd)
np.
int i, j=10, tab1[1000], tab2[1000];
memcpy( &i , &j, sizeof( i ) );
memcpy…
... zobacz całą notatkę

Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz