Wprowadzenie do programowania w języku C
|
|
- Dorota Górecka
- 9 lat temu
- Przeglądów:
Transkrypt
1 Wprowadzenie do programowania w języku C Część trzecia Autor Roman Simiński Kontakt siminski@us.edu.pl Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi uważnego w nim uczestnictwa. Opracowanie to jest chronione prawem autorskim. Wykorzystywanie jakiegokolwiek fragmentu w celach innych niż nauka własna jest nielegalne. Dystrybuowanie tego opracowania lub jakiejkolwiek jego części oraz wykorzystywanie zarobkowe bez zgody autora jest zabronione.
2 jednomodułowego Problem Spróbujmy to napisać z wykorzystaniem podprogramów Napisać program obliczający obwód i pole koła o promieniu podanym przez użytkownika. W języku C nie występuje podział podprogramów na procedury i funkcje. Wszystkie podprogramy są funkcjami, istnieje jednak możliwość wykorzystywania funkcji jak procedur, bądź deklarowania funkcji tak, by przypominały procedury. #include <stdio.h> #include <stdlib.h> int main() przywitanie(); Wywołanie funkcji return EXIT_SUCCESS; int przywitanie( void ) puts( "\nczesc, tu funkcja przywitanie" ); return 0; Definicja funkcji Copyright Roman Simiński Strona : 2
3 jednomodułowego funkcje Czy testowy program się skompiluje bez problemów? Tak, bez błędów i ostrzeżeń w starszych wersjach kompilatorów. Dlaczego występują te rozbieżności? Tak, bez błędów lecz z ostrzeżeniem w nowszych wersjach kompilatorów, oraz tych pracujących w trybie zgodności z normą ANSI. Nie, wystąpi błąd w kompilatorach pracujących w trybie C++. Definicja funkcji przywitanie występuje po jej wywołaniu. Kompilator na etapie wywołania jej jeszcze nie zna. Czyni w stosunku do niej założenia że to funkcja, której rezultatem jest wartość int. To założenie może być słusznie albo nie. Aby uniknąć niejednoznaczności, wprowadza się prototypy funkcji. Aby kompilator mógł kontrolować poprawność wywołania funkcji, należy to wywołanie poprzedzić definicją lub deklaracją wywoływanej funkcji. Deklaracja przyjmuje postać prototypu funkcji. Definicja funkcji int przywitanie( void ) puts( "\nczesc, tu funkcja przywitanie" ); return 0; Prototyp funkcji int przywitanie( void ); Copyright Roman Simiński Strona : 3
4 jednomodułowego funkcje Ogólna postać definicji funkcji: <typ_rezultatu> nazwa_funkcji ( lista_parametrów_formalnych ) ciało_funkcji Ogólna postać prototypu funkcji: <typ_rezultatu> nazwa_funkcji ( lista_parametrów_formalnych ); Dwie wersje poprawnego programu przykładowego Z prototypem: Po paskalowemu : int przywitanie( void ); int main() przywitanie(); int przywitanie( void ) return EXIT_SUCCESS; int przywitanie( void ) int main() przywitanie(); return EXIT_SUCCESS; Copyright Roman Simiński Strona : 4
5 jednomodułowego funkcje Dlaczego przywitanie to funkcja, skoro nie udostępnia sensownego rezultatu? int przywitanie( void ) puts( "\nczesc, tu funkcja przywitanie" ); return 0; Może lepiej tak, czyli jak zrobić z funkcji procedurę: void przywitanie( void ) puts( "\nczesc, tu funkcja przywitanie" ); Ale może być kłopot int main() przywitanie(); return EXIT_SUCCESS; void przywitanie( void ) puts( "\nczesc, tu funkcja przywitanie" ); Kompilator zakłada, że funkcja będzie miała rezultat int. Copyright Roman Simiński Strona : 5
6 jednomodułowego funkcje, podsumowanie Podsumowanie informacji o prototypach Starsze implementacje C dopuszczały wywoływanie funkcji wcześniej kompilatorowi nieznanych. W trakcie kompilowania wywołania nieznanej funkcji przez domniemanie przyjmowano, że zwraca ona wartość int i nic nie wiadomo na temat jej parametrów. Nie pozwalało to kompilatorowi kontrolować poprawności wywołania funkcji. Aby kompilator mógł kontrolować poprawność wywołania funkcji, należy to wywołanie poprzedzić definicją lub deklaracją wywoływanej funkcji. Deklaracja przyjmuje postać prototypu funkcji. Deklaracja i definicja funkcji powinna być zgodna. Jeżeli w obrębie jednego pliku wystąpi niezgodność, kompilator zgłosi błąd kompilacji. Copyright Roman Simiński Strona : 6
7 jednomodułowego funkcje, podsumowanie Uwagi na temat definicji funkcji: Słowo kluczowe void, będące nazwą typu, oznacza brak, nieobecność jakiejkolwiek wartości. Jeżeli typem rezultatu będzie typ określany słowem kluczowym void, to oznacza, iż funkcja nie udostępnia rezultatu staje się wtedy czymś podobnym do procedury z języka Pascal. Jeżeli w miejscu listy parametrów formalnych występuje słowo kluczowe void, to oznacza, że funkcja nie posiada parametrów. Jeżeli funkcja zwraca wartość w miejscu wywołania, w ciele funkcji powinna wystąpić instrukcja return, a po niej, wyrażenie o typie zgodnym z typem rezultatu funkcji. Na liście parametrów formalnych, dla każdego parametru określamy jego typ. Copyright Roman Simiński Strona : 7
8 jednomodułowego obliczanie obwodu i pola koła A może by tak w końcu wrócić do programu, który mieliśmy napisać... #include <stdio.h> #include <stdlib.h> #define PI 3.14 #define MAKS_DL 80 void komunikat_wstepny( void ); void oblicz( void ); float obwod_kola( float r ); float pole_kola( float r ); int main() komunikat_wstepny(); oblicz(); return EXIT_SUCCESS; void komunikat_wstepny( void ) puts("\nobliczam obwod..."); void oblicz( void ) float r; char s[ MAKS_DL ]; printf("\npodaj promien R = " ); fgets( s, MAKS_DL, stdin ); r = atof( s ); printf( "Obwod : %g\n", obwod_kola(r) ); printf( "Pole : %g\n", pole_kola(r) ); printf( "\nnacisnij Enter by..." ); getchar(); float obwod_kola( float r ) return 2 * PI * r; float pole_kola( float r ) return PI * r * r; Copyright Roman Simiński Strona : 8
9 jednomodułowego przykłady funkcji Kilka prostych funkcji void print_message( void ) puts( "\nobliczam pole kola" ); int zawsze_5( void ) /* Wiem, że to bez sensu :-\ */ return 5; float do_kwadratu( float a ) return a * a; float oblicz_spalanie( float paliwo, float dystans ) return ( paliwo * 100 ) / dystans; Copyright Roman Simiński Strona : 9
10 jednomodułowego przykłady funkcji Zamiast printf("\npodaj promien R = " ); fgets( s, MAKS_DL, stdin ); r = atof( s ); printf( "Obwod : %g\n", obwod_kola(r) ); printf( "Pole : %g\n", pole_kola(r) ); A może tak: printf("\npodaj promien R = " ); r = wczytaj_liczbe_f(); printf( "Obwod : %g\n", obwod_kola( r ) ); printf( "Pole : %g\n", pole_kola( r ) ); Przykład użytecznej funkcji float wczytaj_liczbe_f( void ) char bufor_tekstowy[ 80 ]; fgets( bufor_tekstowy, 80, stdin ); return atof( bufor_tekstowy ); Copyright Roman Simiński Strona : 10
11 jednomodułowego przykłady funkcji Zamiast printf("\npodaj promien R = " ); r = wczytaj_liczbe_f(); printf( "Obwod : %g\n", obwod_kola( r ) ); printf( "Pole : %g\n", pole_kola( r ) ); A może tak: r = wczytaj_liczbe_f( "\npodaj promien R = " ); printf( "Obwod : %g\n", obwod_kola( r ) ); printf( "Pole : %g\n", pole_kola( r ) ); Przykład użytecznej funkcji wersja kolejna float wczytaj_liczbe_f( char komunikat[] ) char bufor_tekstowy[ 80 ]; printf( komunikat ); fgets( bufor_tekstowy, 80, stdin ); return atof( bufor_tekstowy ); Copyright Roman Simiński Strona : 11
12 jednomodułowego przykłady funkcji Przykład wykorzystania rezultatu do sygnalizacji błędów float oblicz_spalanie( float paliwo, float dystans ) if( dystans == 0 ) return 1; else return fabs( ( paliwo * 100 ) / dystans ); spalanie = oblicz_spalanie( 40.5, 0 ); if( spalanie == -1 ) printf( "Nie dokonam oblicze ń dla błędnych danych" ); else printf( "Spalanie %4.2f l na 100 km", spalanie ); Uwaga na instrukcję return float oblicz_spalanie( float paliwo, float dystans ) if( dystans == 0 ) printf( "Nie dokonam oblicze ń dla zerowego dystansu" ); // return??? else return ( paliwo * 100 ) / dystans; Copyright Roman Simiński Strona : 12
13 jednomodułowego uwagi Parę pułapek związanych z definicjami funkcji W języku C wolno czasem opuścić słowo kluczowe int, wtedy zostanie ono przyjęte domyślnie. To, że tak robić można nie oznacza, że tak robić trzeba. Zapisy równoważne int fun() fun() Nawiasy po nazwie funkcji są konieczne, nawet gdy funkcja nie ma parametrów. Nawiasy występują zarówno przy definicji, deklaracji jak i przy wywołaniu funkcji. Jednak puste nawiasy wbrew pozorom nie oznaczają braku parametrów a ich nieokreśloną liczbę! Trzy następujące po sobie kropki... oznaczają zmienną liczbę parametrów, jakie można przekazać funkcji. Zapisy równoważne int fun() int fun(... ) Dozwolone wywołania funkcji fun: fun(); fun( 5 ); fun( "Ala" ); fun( 2 * a ); fun( "Ala", "As" ); Copyright Roman Simiński Strona : 13
14 jednomodułowego uwagi Funkcja printf jest przykładem funkcji o zmiennej liczbie parametrów: printf( "Witaj w programie" ); printf( "Pole kola %g, jego obwod %g", pole_kola( r ), obwod_kola( r ) ); printf( "Spalanie %4.2f l na 100 km", ( paliwo * 100 ) / dystans ); W języku C każdy programista może pisać własne funkcje ze zmienną liczbą parametrów, wymaga to zastosowania odpowiednich makr zostanie to omówione później. Słowo kluczowe void oznacza brak, nieobecność jakiejkolwiek wartości. void fun( void ) Zapis oznacza, że funkcja fun nie udostępnia żadnej wartości, oraz nie otrzymuje żadnych parametrów. Copyright Roman Simiński Strona : 14
15 jednomodułowego uwagi W języku C wszystkie funkcje są zewnętrzne void oblicz_pole_kola( void ) float r; char s[ MAKS_DL ]; printf("\npodaj promien R = " ); gets( s ); r = atof( s ); printf( "Pole kola wynosi %g", pole_kola( r ) ); float pole_kola( float r ) return PI * r * r; Procedure ObliczPoleKola; Var R : Real; Function PoleKola : Real; Funkcja nielokalna Const Pi = 3.14; Begin PoleKola := Pi * R * R; End; Begin WriteLn; WriteLn( Podaj promie ń R: ); ReadLn( R ); WriteLn( Pole wynosi:, PoleKola ); End; Copyright Roman Simiński Strona : 15
16 Deklaracje i definicje zmiennych klasy pamięci Zmienne klasy auto zmienne automatyczne void fun( float a ) int i = 0; char c = 'A'; float f; if( i == 0 ) float i = 100.0; int k; Przesłanianie identyfikatorów w obrębie tego bloku instrukcji if nazwa i oznacza, lokalną w tym bloki, zmienną typu float. Zmienne klasy auto mogą być definiowane na początku każdego bloku (standard C89 języka C, w standardzie C99 i w języku C++ jest inaczej). Zmienne klasy auto pojawiają się i znikają wraz z wejściem i wyjściem sterowania do bloku w którym są zadeklarowane. Zmienne deklarowane wewnątrz bloku są automatycznymi, jeżeli nie podano klasy pamięci albo jawnie użyto specyfikatora auto. Copyright Roman Simiński Strona : 16
17 Deklaracje i definicje zmiennych klasy pamięci Zmienne klasy auto zmienne automatyczne,cd... #include <stdio.h> #include <stdlib.h> void fun( float a ) int i = 0; int j; printf( "\na = %.2f i = %d j = %d", a, i, j ); int main() fun( 1.0 ); fun( 2.0 ); fun( 3.0 ); return EXIT_SUCCESS; Zmienne klasy auto: Nie zachowują swoich wartości pomiędzy swoimi kolejnymi kreacjami. O ile nie zostaną zainicjalizowane, maja wartości przypadkowe. Parametry formalne funkcji też są klasy auto. Copyright Roman Simiński Strona : 17
18 Deklaracje i definicje zmiennych klasy pamięci Gdzie w pamięci operacyjnej lokowane są zmienne automatyczne? Zmienna klasy auto tworzone są automatycznie, lokowane są na stosie. Stos to element procesu, służący do przechowywania danych chwilowych. Na stosie lokowane są zmienne auto, w tym argumenty funkcji, oraz adresy powrotu dla wywoływanych podprogramów. Stos ma ustalony i ograniczony rozmiar należy sprawdzić ustalenia rozmiaru stosu w opcjach kompilatora (konsolidatora). Może się zdarzyć, że stos ma rozmiar rzędu kilku kilobajtów. Wobec powyższego, niebezpieczna może być poniższa definicja dużej tablicy: void fun( void ) float tab[ ]; Uwaga: użycie słowa kluczowego auto dla deklaracji zmiennej, która jest domyślnie właśnie klasy auto, jest bezcelowe: auto int i; int i; Copyright Roman Simiński Strona : 18
19 Deklaracje i definicje zmiennych klasy pamięci Zmienne klasy static zmienne statyczne #include <stdio.h> void fun_auto( void ) int i = 1; printf( "\nauto %d", i++ ); void fun_static( void ) static int i = 1; printf( "\nstatic %d\n", i++ ); Operator ++ zwiększa o 1 wartość zmiennej przy której występuje. Zatem, zapis: i++ równoważny jest: i = i + 1 int main() fun_auto(); fun_static(); fun_auto(); fun_static(); fun_auto(); fun_static(); Copyright Roman Simiński Strona : 19
20 Deklaracje i definicje zmiennych klasy pamięci Zmienne klasy static zmienne statyczne, cd... Zmienne statyczne mogą być lokalne w bloku lub zewnętrzne dla wszystkich bloków. Jeżeli zmienna wewnątrz bloku zostanie zadeklarowana ze specyfikatorem static, to: jest raz inicjowana wartością inicjalizatora lub nadawana jest jej wartość zerowa odpowiednio do typu. przechowuje wartość po opuszczeniu i ponownym wejściu do bloku. Statyczne zmienne lokalne stanowią prywatną, nieulotną pamięć danej funkcji czy bloku. Szkic przykładowego zastosowania zmiennej statycznej funkcja z limitem wywołań void fun_z_limitem_wywolan( void ) static int licznik_wywolan = 0; if( licznik_wywolan < 10 ) licznik_wywolan++; /* Tutaj odpowiednie instrukcje */ else puts( "Wersja demo -- limit wywolan wyczerpany" ); Copyright Roman Simiński Strona : 20
21 Deklaracje i definicje zmiennych klasy pamięci Zmienne klasy register zmienne rejestrowe Deklaracja zmiennej jako register jest równoważna z deklaracją auto, ale wskazuje że deklarowany obiekt będzie intensywnie wykorzystywany, i w miarę możliwości będzie umieszczony w rejestrze procesora. Jeżeli nie jest możliwe umieszczenie zmiennej w rejestrze, pozostaje ona w pamięci. Zmienne rejestrowe pozwalają zredukować zajętość pamięci i poprawić szybkość wykonania operacji takie zmienne wykorzystujących. Jednak większość współczesnych kompilatorów wykorzystuje optymalizację rejestrową, zatem wiele zmiennych i tak przechowywanych jest w rejestrach, mimo braku jawnej specyfikacji jako register. register i; for( i = 0; i < 10; i++ ) int very_time_critical_fun( register int i, register char c ) Copyright Roman Simiński Strona : 21
22 Deklaracje i definicje zmiennych klasy pamięci Zmienne klasy extern zmienne zewnętrzne #include <stdio.h> #include <stdlib.h> float dystans, paliwo; void komunikat_wstepny( void ) int main() komunikat_wstepny(); czytaj_dane(); pisz_wyniki(); return EXIT_SUCCESS; void czytaj_dane( void ) dystans = fabs( atof( linia ) ); paliwo = fabs( atof( linia ) ); void pisz_wyniki( void ) if( dystans == 0 ) printf( "Nie policze spalania dla zerowego dystansu" ); else printf( "Spalanie %4.2f l na 100 km", ( paliwo * 100 ) / dystans ); Copyright Roman Simiński Strona : 22
23 Deklaracje i definicje zmiennych klasy pamięci Zmienne klasy extern zmienne zewnętrzne, cd... Zmienne zewnętrzne deklarowane są na zewnątrz wszystkich funkcji. Zasięg zmiennej zewnętrznej rozciąga się od miejsca deklaracji do końca tego pliku. Zmienne zewnętrzne istnieją stale, nie pojawiają się i nie znikają, zachowują swoje wartości i są dostępne dla wszystkich funkcji programy występujących w zakresie danej zmiennej. Zmienna zewnętrzna jest raz inicjowana wartością inicjalizatora lub nadawana jest jej wartość zerowa odpowiednio do typu. Jeżeli dla zmiennej zewnętrznej użyjemy specyfikacji static, to oznacza to uprywatnienie (ograniczenie dostępu) w obrębie danego pliku źródłowego. Zmienne zewnętrzne oraz ich właściwe definiowanie i deklarowanie mają istotne znaczenie przy organizacji programów wielomodułowych. Delikatne kwestie definicja a deklaracja extern int i; int i; Deklaracja zmiennej jako extern nie powoduje przydziału pamięci i może występować w programie wiele razy. Definicja zmiennej, powodująca przydzielenie pamięci. Copyright Roman Simiński Strona : 23
24 Deklaracje i definicje zmiennych przekazywanie parametrów W języku C parametry przekazywane są przez wartość Każda funkcja może posiadać parametry na etapie definicji funkcji określa się ich liczbę, typy i nazwy. Parametry te nazywane są parametrami formalnymi funkcji. float pole_trojkata( float a, float h ) /* Definicja funkcji */ return 0.5 * a * h; a i h to nazwy parametrów formalnych funkcji Każdą funkcje można wywołać. Na etapie wywołania funkcji określa się konkretne wartości jakie maja przyjąć parametry formalne. Wartości, z którymi jest wywoływana funkcja nazywane są parametrami aktualnymi wywołania funkcji. float podstawa = 10, wysokosc = 5, pole; pole = pole_trojkata( podstawa, wysokosc ); pole = pole_trojkata( 20, 10 ); podstawa i wysokosc oraz 20 i 10 to parametry aktualne Copyright Roman Simiński Strona : 24
25 Deklaracje i definicje zmiennych przekazywanie parametrów W języku C parametry przekazywane są przez wartość W języku C obowiązuje zasada przekazywania parametrów przez wartość. Zakład ona, iż na etapie wywołania funkcji wartość parametru aktualnego kopiowana jest do odpowiedniego parametru formalnego. Parametr formalny i aktualny są od siebie niezależne i, po przekazaniu wartości, nie występuje pomiędzy nimi żadne powiązanie. W języku C nie występuje jawnie przekazywanie parametrów przez zmienną. Copyright Roman Simiński Strona : 25
26 Ilustracja przekazywania parametrów przez wartość a -- to parametr formalny funkcji inc i -- to parametr aktualny wywołania funkcji inc Wywołanie funkcji inc i 5 a Stan pamięci operacyjnej 5 Kopiowanie wartości parametru aktualnego i do parametru formalnego a Wykonanie funkcji inc Stan pamięci operacyjnej i 5 a 6 5 a++ Inkrementacja parametru formalnego a Po wykonaniu funkcji inc Stan pamięci operacyjnej i 5 a 6 Parametr a będący klasy auto jest usuwany Copyright Roman Simiński Strona : 26
Podstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziesiąta Rekordy w C/C++ struktury Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Niniejsze opracowanie zawiera skrót
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część ósma Zmienne wskaźnikowe koncepcja, podstawowe zastosowania Wersja skrócona, tylko C++ Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski
Bardziej szczegółowoMETODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowoProgramowanie w języku C++
Programowanie w języku C++ Część siódma Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część piąta Funkcje i struktura programu Wersja skrócona, tylko C++ Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Bardziej szczegółowoJęzyki programowania obiektowego Nieobiektowe elementy języka C++
Języki programowania obiektowego Nieobiektowe elementy języka C++ Roman Simiński roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Klasy pamięci, programy wielomodułowe Deklaracje zmiennych
Bardziej szczegółowoWykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik
Wykład VII Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Kompilacja Kompilator C program do tłumaczenia kodu źródłowego na język maszynowy. Preprocesor
Bardziej szczegółowoPodstawy programowania w języku C i C++
Podstawy programowania w języku C i C++ Część piąta Funkcje i struktura programu Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część trzynasta Tablice struktur, pliki struktur Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści
Bardziej szczegółowoWstęp do programowania
wykład 8 Agata Półrola Wydział Matematyki i Informatyki UŁ semestr zimowy 2018/2019 Podprogramy Czasami wygodnie jest wyodrębnić jakiś fragment programu jako pewną odrębną całość umożliwiają to podprogramy.
Bardziej szczegółowoWprowadzenie do programowania w języku C
Wprowadzenie do programowania w języku C Część druga Instrukcje sterujące przebiegiem programu Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót
Bardziej szczegółowoZmienne, stałe i operatory
Zmienne, stałe i operatory Przemysław Gawroński D-10, p. 234 Wykład 2 4 marca 2019 (Wykład 2) Zmienne, stałe i operatory 4 marca 2019 1 / 21 Outline 1 Zmienne 2 Stałe 3 Operatory (Wykład 2) Zmienne, stałe
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziesiąta Rekordy w C/C++ struktury Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowoProgramowanie w języku C++
Programowanie w języku C++ Część dziewiąta Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część siódma Przetwarzanie tablic znaków Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowoJęzyki programowania obiektowego Nieobiektowe elementy języka C++
Języki programowania obiektowego Nieobiektowe elementy języka C++ Roman Simiński roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Funkcje, przekazywanie parametrów, przykłady wykorzystania
Bardziej szczegółowoFunkcja (podprogram) void
Funkcje Co to jest funkcja? Budowa funkcji Deklaracja, definicja i wywołanie funkcji Przykłady funkcji definiowanych przez programistę Przekazywanie argumentów do funkcji Tablica jako argument funkcji
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część jedenasta Przetwarzanie plików amorficznych Konwencja języka C Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Bardziej szczegółowoTablice, funkcje - wprowadzenie
Tablice, funkcje - wprowadzenie Przemysław Gawroński D-10, p. 234 Wykład 5 25 marca 2019 (Wykład 5) Tablice, funkcje - wprowadzenie 25 marca 2019 1 / 12 Outline 1 Tablice jednowymiarowe 2 Funkcje (Wykład
Bardziej szczegółowoGlobalne / Lokalne. Wykład 15. Podstawy programowania (język C) Zmienne globalne / lokalne (1) Zmienne globalne / lokalne (2)
Podstawy programowania (język C) Globalne / Lokalne Wykład 15. Tomasz Marks - Wydział MiNI PW -1- Tomasz Marks - Wydział MiNI PW -2- Zmienne globalne / lokalne (1) int A, *Q; // definicja zmiennych globalnych
Bardziej szczegółowoWykład 4: Klasy i Metody
Wykład 4: Klasy i Metody Klasa Podstawa języka. Każde pojęcie które chcemy opisać w języku musi być zawarte w definicji klasy. Klasa definiuje nowy typ danych, których wartościami są obiekty: klasa to
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziewiąta Tablice a zmienne wskaźnikowe Wersja skrócona, tylko C++ Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Bardziej szczegółowoWstęp do programowania
wykład 10 Agata Półrola Wydział Matematyki i Informatyki UŁ semestr zimowy 2018/2019 Przesyłanie argumentów - cd Przesyłanie argumentów do funkcji - tablice wielowymiarowe Przekazywanie tablic wielowymiarowych
Bardziej szczegółowoJęzyk C zajęcia nr 11. Funkcje
Język C zajęcia nr 11 Funkcje W języku C idea podprogramów realizowana jest wyłącznie poprzez definiowanie i wywołanie funkcji. Każda funkcja musi być przed wywołaniem zadeklarowana. Deklaracja funkcji
Bardziej szczegółowoJĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Wykład 6 1 SPECYFIKATOR static Specyfikator static: Specyfikator ten powoduje, że zmienna lokalna definiowana w obrębie danej funkcji nie jest niszczona
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część ósma Zmienne wskaźnikowe koncepcja, podstawowe zastosowania Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Bardziej szczegółowowykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury,
, Programowanie, uzupełnienie notatek: dr Jerzy Białkowski , 1 2 3 4 , Wczytywanie liczb , Wczytywanie liczb 1 #include 2 #include < s t d l i b. h> 3 4 int main ( ) { 5 int rozmiar, numer
Bardziej szczegółowoPodstawy algorytmiki i programowania - wykład 4 C-struktury
1 Podstawy algorytmiki i programowania - wykład 4 C-struktury Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy
Bardziej szczegółowoWstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 6. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Funkcje w języku C Zasięg zmiennych Przekazywanie
Bardziej szczegółowoWskaźniki w C. Anna Gogolińska
Wskaźniki w C Anna Gogolińska Zmienne Zmienną w C można traktować jako obszar w pamięci etykietowany nazwą zmiennej i zawierający jej wartość. Przykład: kod graficznie int a; a a = 3; a 3 Wskaźniki Wskaźnik
Bardziej szczegółowoJęzyki programowania. Tablice struktur, pliki struktur. Część ósma. Autorzy Tomasz Xięski Roman Simiński
Języki programowania Część ósma Tablice struktur, pliki struktur Autorzy Tomasz Xięski Roman Simiński Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi uważnego w
Bardziej szczegółowo1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość
1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float
Bardziej szczegółowoTablice (jedno i wielowymiarowe), łańcuchy znaków
Tablice (jedno i wielowymiarowe), łańcuchy znaków wer. 8 z drobnymi modyfikacjami! Wojciech Myszka Katedra Mechaniki i Inżynierii Materiałowej 2017-04-07 09:35:32 +0200 Zmienne Przypomnienie/podsumowanie
Bardziej szczegółowoC-struktury wykład. Dorota Pylak
C-struktury wykład Dorota Pylak C-struktury W języku C++, jak w każdym języku obiektowym, mamy możliwość definiowania własnych typów danych, wraz z określeniem operacji, jakie na tych danych można wykonywać.
Bardziej szczegółowoStruktura programu. Projekty złożone składają się zwykłe z różnych plików. Zawartość każdego pliku programista wyznacza zgodnie z jego przeznaczeniem.
Struktura programu Projekty złożone składają się zwykłe z różnych plików. Zawartość każdego pliku programista wyznacza zgodnie z jego przeznaczeniem. W ostatnich latach najbardziej używanym stylem oprogramowania
Bardziej szczegółowoPodstawy programowania
Podstawy programowania Część siódma Przetwarzanie tablic znaków Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowoPodstawy programowania
Podstawy programowania Część ósma Tablice znaków i przetwarzanie napisów Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura
Bardziej szczegółowo1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?
1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie? a) konstruktor b) referencje c) destruktor d) typy 2. Które z poniższych wyrażeń są poprawne dla klasy o nazwie
Bardziej szczegółowoPodstawy programowania. Wykład: 7. Funkcje Przekazywanie argumentów do funkcji. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
programowania Wykład: 7 Funkcje Przekazywanie argumentów do funkcji 1 dr Artur Bartoszewski - programowania, sem 1 - WYKŁAD programowania w C++ Funkcje 2 dr Artur Bartoszewski - programowania sem. 1 -
Bardziej szczegółowoWykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Bardziej szczegółowoPodstawy programowania komputerów
Podstawy programowania komputerów Wykład 10: Sterowanie pamięcią w C Pamięć na stosie!każdy program napisany w języku C ma dostęp do dwóch obszarów pamięci - stosu i sterty, w których może być przechowywana
Bardziej szczegółowoFunkcje. Spotkanie 5. Tworzenie i używanie funkcji. Przekazywanie argumentów do funkcji. Domyślne wartości argumentów
Funkcje. Spotkanie 5 Dr inż. Dariusz JĘDRZEJCZYK Tworzenie i używanie funkcji Przekazywanie argumentów do funkcji Domyślne wartości argumentów Przeładowanie nazw funkcji Dzielenie programu na kilka plików
Bardziej szczegółowoTemat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.
Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,
Bardziej szczegółowoObiekt klasy jest definiowany poprzez jej składniki. Składnikami są różne zmienne oraz funkcje. Składniki opisują rzeczywisty stan obiektu.
Zrozumienie funkcji danych statycznych jest podstawą programowania obiektowego. W niniejszym artykule opiszę zasadę tworzenia klas statycznych w C#. Oprócz tego dowiesz się czym są statyczne pola i metody
Bardziej szczegółowoWykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe
Wykład 15 Wprowadzenie do języka na bazie a Literatura Podobieństwa i różnice Literatura B.W.Kernighan, D.M.Ritchie Język ANSI Kompilatory Elementarne różnice Turbo Delphi FP Kylix GNU (gcc) GNU ++ (g++)
Bardziej szczegółowoKatedra Elektrotechniki Teoretycznej i Informatyki. wykład 12 - sem.iii. M. Czyżak
Katedra Elektrotechniki Teoretycznej i Informatyki wykład 12 - sem.iii M. Czyżak Język C - preprocesor Preprocesor C i C++ (cpp) jest programem, który przetwarza tekst programu przed przekazaniem go kompilatorowi.
Bardziej szczegółowoJęzyki programowania. Przetwarzanie tablic znaków. Część druga. Autorzy Tomasz Xięski Roman Simiński
Języki programowania Część druga Przetwarzanie tablic znaków Autorzy Tomasz Xięski Roman Simiński Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi uważnego w nim
Bardziej szczegółowoWstęp do programowania
Wstęp do programowania wykład 2 Piotr Cybula Wydział Matematyki i Informatyki UŁ 2012/2013 http://www.math.uni.lodz.pl/~cybula Język programowania Każdy język ma swoją składnię: słowa kluczowe instrukcje
Bardziej szczegółowoczęść 8 wskaźniki - podstawy Jarosław Gramacki Instytut Informatyki i Elektroniki Podstawowe pojęcia
Język ANSI C część 8 wskaźniki - podstawy Jarosław Gramacki Instytut Informatyki i Elektroniki Podstawowe pojęcia najbardziej podstawowe operacje na wskaźnikach int x = 1, y = 2, Tab[10]; int *ip; // czy
Bardziej szczegółowoPodstawy programowania w języku C i C++
Podstawy programowania w języku C i C++ Część czwarta Operatory i wyrażenia Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowoInformatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
Bardziej szczegółowoWskaźniki. Przemysław Gawroński D-10, p marca Wykład 2. (Wykład 2) Wskaźniki 8 marca / 17
Wskaźniki Przemysław Gawroński D-10, p. 234 Wykład 2 8 marca 2019 (Wykład 2) Wskaźniki 8 marca 2019 1 / 17 Outline 1 Wskaźniki 2 Tablice a wskaźniki 3 Dynamiczna alokacja pamięci (Wykład 2) Wskaźniki 8
Bardziej szczegółowoC-struktury wykład. Dorota Pylak
C-struktury wykład Dorota Pylak C-struktury W języku C++, jak w każdym języku obiektowym, mamy możliwość definiowania własnych typów danych, wraz z określeniem operacji, jakie na tych danych można wykonywać.
Bardziej szczegółowoJęzyki programowania. Przetwarzanie plików amorficznych Konwencja języka C. Część siódma. Autorzy Tomasz Xięski Roman Simiński
Języki programowania Część siódma Przetwarzanie plików amorficznych Konwencja języka C Autorzy Tomasz Xięski Roman Simiński Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie
Bardziej szczegółowoTEMAT : KLASY DZIEDZICZENIE
TEMAT : KLASY DZIEDZICZENIE Wprowadzenie do dziedziczenia w języku C++ Język C++ możliwa tworzenie nowej klasy (nazywanej klasą pochodną) w oparciu o pewną wcześniej zdefiniowaną klasę (nazywaną klasą
Bardziej szczegółowoISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje
Funkcje (podprogramy) Mianem funkcji określa się fragment kodu, który może być wykonywany wielokrotnie z różnych miejsc programu. Ogólny zapis: typ nazwa(argumenty) ciało funkcji typ określa typ danych
Bardziej szczegółowoJęzyk ludzki kod maszynowy
Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza
Bardziej szczegółowoWprowadzenie do programowanie obiektowego w języku C++
Wprowadzenie do programowanie obiektowego w języku C++ Część czwarta Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura
Bardziej szczegółowoArgumenty wywołania programu, operacje na plikach
Temat zajęć: Argumenty wywołania programu, operacje na plikach Autor: mgr inż. Sławomir Samolej Zagadnienie 1. (Zmienne statyczne) W języku C można decydować o sposobie przechowywania zmiennych. Decydują
Bardziej szczegółowoW2 Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy :
Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy : class nazwa_klasy prywatne dane i funkcje public: publiczne dane i funkcje lista_obiektów;
Bardziej szczegółowoWykład 5: Klasy cz. 3
Programowanie obiektowe Wykład 5: cz. 3 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD - podstawy Konstruktor i destruktor (część I) 2 Konstruktor i destruktor KONSTRUKTOR Dla przykładu
Bardziej szczegółowoKURS C/C++ WYKŁAD 8. Deklaracja funkcji informuje komplilator jaką wartość funkcja będzie zwracała i jakiego typu są jej argumenty.
Funkcje. Deklaracja funkcji: KURS C/C++ WYKŁAD 8 #include //deklaracje funkcji: printf(...), scanf(...) #include //double sqrt (double ) #include //void clrscr (void) void main
Bardziej szczegółowoTypy złożone. Struktury, pola bitowe i unie. Programowanie Proceduralne 1
Typy złożone Struktury, pola bitowe i unie. Programowanie Proceduralne 1 Typy podstawowe Typy całkowite: char short int long Typy zmiennopozycyjne float double Modyfikatory : unsigned, signed Typ wskaźnikowy
Bardziej szczegółowoWprowadzenie do programowania w języku C
Wprowadzenie do programowania w języku C Część szósta Zmienne wskaźnikowe koncepcja, zastosowania, sztuczki i triki Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Bardziej szczegółowoJęzyk C++ zajęcia nr 2
Język C++ zajęcia nr 2 Inicjalizacja Definiowanie obiektu może być połączone z nadaniem mu wartości początkowej za pomocą inicjalizatora, który umieszczany jest po deklaratorze obiektu. W języku C++ inicjalizator
Bardziej szczegółowoIMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi
IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi EGZAMIN PIERWSZY (25 CZERWCA 2013) JĘZYK C++ poprawiam ocenę pozytywną z egzaminu 0 (zakreśl poniżej x) 1. Wśród poniższych wskaż poprawną formę definicji
Bardziej szczegółowoPROE wykład 2 operacje na wskaźnikach. dr inż. Jacek Naruniec
PROE wykład 2 operacje na wskaźnikach dr inż. Jacek Naruniec Zmienne automatyczne i dynamiczne Zmienne automatyczne: dotyczą kontekstu, po jego opuszczeniu są usuwane, łatwiejsze w zarządzaniu od zmiennych
Bardziej szczegółowoPodstawy programowania
Podstawy programowania Część dziewiąta Procedury i funkcje Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów
Bardziej szczegółowoSzablony funkcji i szablony klas
Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2011 Bogdan Kreczmer Niniejszy dokument
Bardziej szczegółowoWstęp do Programowania, laboratorium 02
Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite
Bardziej szczegółowomain( ) main( void ) main( int argc, char argv[ ] ) int MAX ( int liczba_1, liczba_2, liczba_3 ) źle!
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
Bardziej szczegółowoRozdział 4 KLASY, OBIEKTY, METODY
Rozdział 4 KLASY, OBIEKTY, METODY Java jest językiem w pełni zorientowanym obiektowo. Wszystkie elementy opisujące dane, za wyjątkiem zmiennych prostych są obiektami. Sam program też jest obiektem pewnej
Bardziej szczegółowowykład II uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - funkcje, tablice i wskaźniki wykład II dr Jarosław Mederski Spis
i cz. 2 Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 i cz. 2 2 i cz. 2 3 Funkcje i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje instrukcje } i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje
Bardziej szczegółowoPola i metody statyczne
Pola i metody statyczne Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2009 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu na temat programowania
Bardziej szczegółowoPARADYGMATY PROGRAMOWANIA Wykład 4
PARADYGMATY PROGRAMOWANIA Wykład 4 Metody wirtualne i polimorfizm Metoda wirualna - metoda używana w identyczny sposób w całej hierarchii klas. Wybór funkcji, którą należy wykonać po wywołaniu metody wirtualnej
Bardziej szczegółowoWskaźniki. Informatyka
Materiały Wskaźniki Informatyka Wskaźnik z punktu widzenia programisty jest grupą komórek pamięci (rozmiar wskaźnika zależy od architektury procesora, najczęściej są to dwa lub cztery bajty ), które mogą
Bardziej szczegółowoStruktury Struktura polami struct struct struct struct
Struktury Struktura jest zbiorem zmiennych występujących pod wspólna nazwą. Zmienne wchodzące w skład struktury nazywane są polami lub elementami, a czasem członkami struktury. Struktury używamy, jeśli
Bardziej szczegółowo1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.
1. Pierwszy program // mój pierwszy program w C++ #include using namespace std; cout
Bardziej szczegółowoProgramowanie strukturalne i obiektowe. Funkcje
Funkcje Często w programach spotykamy się z sytuacją, kiedy chcemy wykonać określoną czynność kilka razy np. dodać dwie liczby w trzech miejscach w programie. Oczywiście moglibyśmy to zrobić pisząc trzy
Bardziej szczegółowoCo nie powinno być umieszczane w plikach nagłówkowych:
Zawartość plików nagłówkowych (*.h) : #include #define ESC 27 dyrektywy dołączenia definicje stałych #define MAX(x,y) ((x)>(y)?(x):(y)) definicje makr int menu(char* tab[], int ilosc); struct
Bardziej szczegółowoWstęp do programowania
Wstęp do programowania Przemysław Gawroński D-10, p. 234 Wykład 1 8 października 2018 (Wykład 1) Wstęp do programowania 8 października 2018 1 / 12 Outline 1 Literatura 2 Programowanie? 3 Hello World (Wykład
Bardziej szczegółowoJęzyki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD
Języki C i C++ Wykład: 2 Wstęp Instrukcje sterujące 1 dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD programowania w C++ Instrukcje sterujące 2 Pętla for for ( instrukcja_ini ; wyrazenie_warunkowe
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziewiąta Tablice a zmienne wskaźnikowe Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści
Bardziej szczegółowoFunctionalization. Funkcje w C. Marcin Makowski. 30 listopada Zak lad Chemii Teoretycznej UJ
w C Zak lad Chemii Teoretycznej UJ 30 listopada 2006 1 2 3 Inicjalizacja zmiennych Zmienne jednowymiarowe można inicjować przy ich definicji. #include i n t x = 1 ; l o n g day = 1000L * 60L
Bardziej szczegółowoKompilator języka C na procesor 8051 RC51 implementacja
Kompilator języka C na procesor 8051 RC51 implementacja Implementowane typy danych bit 1 bit char lub char signed 8 bitów char unsigned 8 bitów int lub signed int 16 bitów unsigned int 16 bitów long lub
Bardziej szczegółowoPodstawy programowania C. dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/
Podstawy programowania C dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/ Tematy Struktura programu w C Typy danych Operacje Instrukcja grupująca Instrukcja przypisania Instrukcja warunkowa Struktura
Bardziej szczegółowoWstęp do informatyki- wykład 9 Funkcje
1 Wstęp do informatyki- wykład 9 Funkcje Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz, Opus magnum
Bardziej szczegółowoSzablony klas, zastosowanie szablonów w programach
Szablony klas, zastosowanie szablonów w programach 1. Szablony klas i funkcji 2. Szablon klasy obsługującej uniwersalną tablicę wskaźników 3. Zastosowanie metody zwracającej przez return referencję do
Bardziej szczegółowoPMiK Programowanie Mikrokontrolera 8051
PMiK Programowanie Mikrokontrolera 8051 Wykład 3 Mikrokontroler 8051 PMiK Programowanie mikrokontrolera 8051 - wykład S. Szostak (2006) Zmienna typu bit #define YES 1 // definicja stałych #define NO 0
Bardziej szczegółowoPodstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
Bardziej szczegółowoC++ - klasy. C++ - klasy. C++ - klasy. C++ - klasy. C++ - klasy INNE SPOSOBY INICJALIZACJI SKŁADOWYCH OBIEKTU
Inicjalizacja agregatowa zmiennej tablicowej int a[5] = 1,2,3,4,5 INNE SPOSOBY INICJALIZACJI SKŁADOWYCH OBIEKTU Struktury są również agregatami, dlatego: struct X double f; char c; X x1 = 1, 2.2, 'c' Ale
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 2 Marcin Młotkowski 4 marca 2015 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 47 Krótki opis C Obiektowy, z kontrolą typów; automatyczne odśmiecanie;
Bardziej szczegółowoProf. Danuta Makowiec Instytut Fizyki Teoretycznej i Astrofizyki pok. 353, tel danuta.makowiec at gmail.com
Programowanie wykład dla I roku bioinformatyki semestr letni 2013 Prof. Danuta Makowiec Instytut Fizyki Teoretycznej i Astrofizyki pok. 353, tel. 58 523 2466 e-mail: danuta.makowiec at gmail.com Cel bloku
Bardziej szczegółowoWstęp do informatyki- wykład 11 Funkcje
1 Wstęp do informatyki- wykład 11 Funkcje Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz, Opus magnum
Bardziej szczegółowoStruktury czyli rekordy w C/C++
Struktury czyli rekordy w C/C++ Wprowadzenie do programowania w języku C struktury. pola bitowe, unie Struktury (rekordy) są złożonymi zmiennymi, składającymi się z elementów różnych typów zwanych polami,
Bardziej szczegółowoTablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1
Tablice i struktury czyli złożone typy danych. Programowanie Proceduralne 1 Tablica przechowuje elementy tego samego typu struktura jednorodna, homogeniczna Elementy identyfikowane liczbami (indeksem).
Bardziej szczegółowoTablice deklaracja, reprezentacja wewnętrzna
Tablice deklaracja, reprezentacja wewnętrzna Tablica jest zmienną złożoną z elementów tego samego typu. Obejmuje ona ciągły obszar pamięci operacyjnej dokładnie tak duży, aby zmieścić wszystkie jej elementy.
Bardziej szczegółowoObsługa wyjątków. Język C++ WW12
Obsługa wyjątków Pozwala zarządzać błędami wykonania w uporządkowany sposób. Umożliwia automatyczne wywołanie części kodu, funkcji, metod klas, który trzeba wykonać przy powstaniu błędów. try //blok try
Bardziej szczegółowoWstęp do wskaźników w języku ANSI C
Wstęp do wskaźników w języku ANSI C / Materiał dydaktyczny pomocniczy do przedmiotu Informatyka sem.iii kier. Elektrotechnika/ 1. Wprowadzenie W języku ANSI C dla każdego typu X (wbudowanego, pochodnego,
Bardziej szczegółowo