background image

1

Podstawy informatyki

wykład 4a

 

  

dr Artur Jakubski

ajakubski@icis.pcz.pl

background image

2

Plan wykładu – najważniejsze 

elementy

 

• Literatura.

• Kompilacja programu w C++. 

• Funkcja main().

• Operacje wejścia–wyjścia. 

• Komentarze.

background image

3

Literatura

1.  Stroustrup B., Jezyk C++, Wyd. 5, WNT 2000

2.  Lippman S., Lajoie J., Podstawy jezyka C++, WNT 

2001

3. Vandevoorde D., Jezyk C++, WNT 2001

4.

 

 J. Grębosz, Symfonia C++,T. 1-3 Oficyna Kallimach, 

Kraków   

      1999

5.  H. Deitel, Arkana, Programowanie C++, 

Wydawnictwo RM, Łódź  

     1999.

                 

background image

4

Literatura uzupełniająca

1.  J. Grębosz,  Pasja C++, Oficyna Kallimach, Kraków 

1997

2.  D. Vandevoorde, Język C++. Ćwiczenia i rozwiązania, 

WNT, 

     Warszawa 2004.

3.  T. Hansen; C++ zadania i odpowiedzi; WNT, 

Warszawa 1994.

4.  Harel D., Rzecz o istocie informatyki, algorytmika, 

WNT 2001.

5.  Knuth D., Sztuka programowania I,II,III, WNT 2002.

background image

5

Język C++

Wyrażenie zakończone średnikiem to instrukcja – 

najmniejszy samodzielny element programu

  cout << "Witamy w C++";

Plik zródłowy – plik stworzony przy pomocy edytora 

tekstowego zawierający treść programu (zgodnie z 

przyjętą konwencją plik zawierający program napisany w 

języku C++, powinien się nazywać nazwa_pliku.cpp).

background image

6

Język C++

Najprostszy program w C++:

void main( )

{

 }

background image

7

Język C++

#include <iostream>

int main( )

{

  std::cout << "Witamy w C++";

  return 0;

}

background image

8

Kompilacja programu w C++

Po stworzeniu pliku zródłowego należy go skompilować.

Postać polecenia wywołującego kompilator C++ zależy 

od konkretnej realizacji języka C++ w danym systemie 

operacyjnym.

Jedno z zadań kompilatora polega na zanalizowaniu tekstu 

programu pod względem jego poprawności: błędy składniowe, 

błędy typu i inne.

W wyniku kompilacji poprawnego pod wzgledem formalnym 

tekstu programu zostaje wygenerowany kod wynikowy czyli 

powstaje plik wykonywalny.

background image

9

Kompilacja programu w C++

Zalecane kompilatory wspierające standard języka C++:   

Windows

          ◦ dj gpp

          ◦ devC++

 Linux

          ◦ gcc (wersja 3.x, 4.x)

          ◦ icc (wersja 7.x, 8.x)

background image

10

Format zapisu programu w C++

Język C++ posiada tzw. wolny format zapisu programu, np:

       •  #include <iostream>

          int main() {std::cout << "Witamy w C++";return 0;}

       •  #include <iostream>

          int

          main()          { std::cout

                                    <<

              "Witamy w C++";

          return 0;}

background image

11

Funkcja main()

W każdym programie języka C++ znajduje się specjalna 

funkcja main(). 

Od tej funkcji rozpoczyna się działanie programu a jej treść 

( jej ciało) jest umieszczona między dwoma nawiasami 

klamrowymi: {    }

           int main()

           {

                ...

                return 0;

           }

background image

12

return 0;

Instrukcja 

return 0 zwraca wartość 0 do 

systemu 

operacyjnego. Przyjęło się, że dla poprawnie 

zakończonego programu wartość zwrócona do systemu 

operacyjnego to 0.

background image

13

Operacje wejścia–wyjścia

std::cout << "Witamy w C++";

powoduje wypisanie na standardowym urządzeniu 

wyjściowym, czyli ekranie monitora, tekstu zawartego 

między  " ... ", w tym przypadku Witamy w C++.

cout pochodzi od console output.

znaki << (operator wyjścia) służą do skierowania napisu 

do strumienia reprezentowanego przez obiekt cout.

      

background image

14

Operacje wejścia–wyjścia

std::cout << "Pierwszy tekst";

std::cout << "i od razu drugi tekst"; 

spowoduje wypisanie na ekranie:

         Pierwszy teksti od razu drugi tekst

Podobnie jedna instrukcja złożona:

std::cout << "Pierwszy tekst" << "i od razu drugi tekst";

background image

15

Operacje wejścia–wyjścia

Znaki sterujące:

  \n – znak końca linii

   \t – znak tabulacji

Przykład:  

std::cout << "Pierwszy tekst\ni od razu drugi tekst";

spowoduje wypisanie na ekranie:

        Pierwszy tekst

        i od razu drugi tekst

background image

16

Operacje wejścia–wyjścia

Przykład:   

cout << "Pierwszy tekst\n" << "i od \trazu drugi tekst";

spowoduje wypisanie:

        Pierwszy tekst

        i od        razu drugi tekst

background image

17

Operacje wejścia–wyjścia

Podobne znaczenie do \n ma tzw. manipulator endl.

endl pochodzi od end of line i powoduje oprócz przejścia do 

nowej lini, także wyczyszczenie bufora wyjsciowego.

Przykład:

std::cout << "Pierwszy tekst" << std::endl

               << "i od razu drugi tekst";

spowoduje wypisanie na ekranie:

        Pierwszy tekst

        i od razu drugi tekst

background image

18

Instrukcja #include

Aby używac symboli nie będących częścią języka C++, 

(np. elementów biblioteki standardowej) należy dołączyć 

do programu odpowiedni plik nagłówkowy instrukcją 

#include<plik_naglowkowy>.

Dyrektywa #include oznacza by kompilator przed 

kompilacją dołączył plik_naglowkowy.

Plik nagłówkowy odpowiedzialny za bibliotekę wejścia-

wyjścia to iostream.

background image

19

Instrukcja #include

Instrukcja #include<plik_naglowkowy> powoduje 

wstawienie zawartości pliku plik_naglowkowy do 

naszego programu. Symbol # występujący przed daną 

instrukcją oznacza, że instrukcja ta jest poleceniem 

preprocesora.

background image

20

Instrukcja using namespace std

     
        #include <iostream>
          using namespace std;
          int main( )
           {
                 cout << "Hello World!!!" << endl;
                 return 0;
           }
      • użyta instrukcja  using namespace std;  
        nazywana jest dyrektywą używania. Powoduje ona 
poinformowanie          kompilatora, że będziemy używać 
symboli z przestrzeni nazw std,   
        co w efekcie daje możliwość pominięcia std:: 
podczas używania  
        tych symboli 

     

background image

21

Instrukcja using namespace std

     
        

#include <iostream>

          using namespace std;
          int main()
           {
                 cout << "Hello World!!!" << endl;
                 return 0;
           }

    • #include jest dyrektywa preprocesora. Plik 
nagłówkowy   
      odpowiedzialny za biblioteke wejscia-wyjscia to 
iostream 
    • instrukcja #include<plik_naglowkowy> powoduje 
wstawienie
      zawartości pliku plik_naglowkowy do naszego 
programu
    • symbol # występujący przed dana instrukcja oznacza, 
że instrukcja   
      ta jest poleceniem preprocesora 

background image

22

Komentarze

Komentarz to ciąg znaków w programie ignorowany 

przez kompilator. 

Komentarzami w języku C++ jest tekst znajdujący się za 

znakami “//” do końca linii. Drugim sposobem jest 

komentarz znajdujący się pomiędzy znakami “/*” oraz 

“*/”. 

background image

23

Komentarze

/* To jest pierwszy 
     program  :-)    */
#include <iostream>   // nagłówek
using namespace std;  // przestrzeń nazw std
//---------------------------------------------------------
int main()
{
    cout << "Hello" << /*endl <<*/ " World!!!" << endl;
    //nie przechodzę w środku do nowej linii
    return 0;
}

background image

24

Zmienna

Potrzeba przechowania jakiejś wartości w pamięci 

komputera.

Łatwiej odwoływać się do zmiennej niż do numerów 

komórek pamięci – adresu.

Tożsamość zmiennej to jej nazwa czyli jej identyfikator. 

Zmienna musi mieć określony typ.

Definicja zmiennej typu całkowitego:

int liczba; 

Definicja zmiennej typu całkowitego połączonej z 

inicjalizacją:

int liczba=17;

background image

25

Wybrane typy zmiennych

  char - typ znakowy

  int - liczba całkowita

  float - liczba zmiennoprzecinkowa (rzeczywista)

  short - liczby całkowite krótkie

  long - liczby całkowite długie

  double - liczby zmiennoprzecinkowe podwójnej 

precyzji

cdn. 

background image

26

Dziękuję za 

uwagę!

                     


Document Outline