Strona główna » C++ » Kurs » Pierwszy Program
 

Pierwszy Program

Język

C++ jak każdy inny język ma swoją gramatykę i interpunkcję. Nieprzestrzeganie reguł zapisu kodu może spowodować, że nasz program będzie działał nieprawidłowo, albo się nie skompiluje. Oczywiście kompilatory jak i również edytory kodu potrafią wykryć niektóre z problemów w kodzie. Jednak to użytkownik musi podjąć decyzję jak usunąć błąd ze swojej aplikacji.

Krok po kroku

Krok 1: Tworzenie projektu

Przed napisaniem pierwszego kodu musimy utworzyć nowy projekt np. PierwszaAplikacja. W nim tworzymy pojedynczy plik kodu źródłowego np. main.cpp i otwieramy go do edycji.

Każdy algorytm jest ciągiem instrukcji, który nazywamy krótko funkcją. Funkcja może przyjmować argumenty i zwracać wynik, który jest rezultatem działania kodu. Są też funkcje, które możemy nazwać procedurami, ponieważ nie zwracają żadnego rezultatu. Przyjęte zostało przez twórców, że funkcja, która jest wywoływana jako pierwsza przez system podczas uruchamiania się systemu nazywa się main. System może uruchamiać program z pewnymi parametrami, dlatego funkcja przyjmuje dwa argumenty: argc - ile argumentów przyjmuje funkcja oraz wskaźnik na listę argv zawierający podane parametry. Rezultatem działania głównej funkcji jest liczba całkowita. Jeśli zwrócona wartość to 0 to oznacza powodzenie działania programu. W przypadku innego wyniku system ma wyraźny sygnał, że program zakończył działanie nieprawidłowo. Na podstawie tych danych zapiszmy schemat wyglądu funkcji main:

  1. int main(int argc, char *argv[]) {
  2.   // tu idzie ciąg instrukcji
  3.   return 0;
  4. }

Przyjrzyjmy się teraz dokładnie składni funkcji. (1.) Na początku deklaracji jest podany typ zwracanej wartości: int to liczba całkowita. Następnie znajduje się nazwa funkcji main. W nawiasach są podane kolejne przyjmowane argumenty. Argumenty są porozdzielane przecinkami, a każdy argument to typ i nazwa funkcji. Przykładowo pierwszy argument to argc i jest to liczba całkowita (int). Ciało funkcji czyli ciąg instrukcji otwieramy znakiem {. Dalej (2.) możemy wstawić dowolne instrukcje, ale na sam koniec (3.) musimy zwrócić wartość o zadeklarowanym wcześniej typie (wyjątkiem są funkcje nie zwracające wartości). TU zwracamy 0 co oznacza, że nasz program wykonał się prawidłowo. Po każdej instrukcji stawiamy średnik ;, a (4.) ciało funkcji zamykamy przy pomocy }.

Jednak istnieje także uproszczona wersja tej funkcji, która nie przyjmuje żadnych argumentów:

  1. int main() {
  2.   // tu idzie ciąg instrukcji
  3.   return 0;
  4. }

To właśnie jej użyjemy do napisania naszego pierwszego programu.

Krok 2: Biblioteki, Przestrzenie nazw

Jednak zanim przejdziemy do pisania programu musimy wiedzieć co to są biblioteki i przestrzenie nazw. Mianowicie biblioteka jest plik, który zawiera gotowe instrukcje do użycia. Użycie biblioteki deklarujemy w części preprocesora czyli na samym początku pliku. W tym artykule będziemy używać biblioteki iostream. Odpowiada ona za wymianę danych z konsolą systemową, dlatego w naszym programie napiszemy taką linijkę kodu:

  1. #include <iostream>

(1.) Oznacza, że chcemy, aby ten program zaimportował funkcję z biblioteki iostream.

Wszystkie funkcji z każdej biblioteki należą do dokładnie jednej przestrzeni nazw w której jest zagwarantowane, że nie istnieje inna funkcja o takiej samej nazwie. Jednak na początku należy wiedzieć, że odwołujemy się do funkcji poprzez określoną przestrzeń nazwy. W celu uniknięcia odwoływania się przy każdym wywołaniu dowolnej funkcji to deklarujemy na początku pliku jakiej przestrzeni nazw używamy:

  1. using namespace std;

(1.) Najprościej to przetłumaczyć jako: użyj przestrzeni nazw std, gdzie std to standardowa przestrzeń zawierająca standardowe funkcje C++.

Krok 3: Funkcja main

Naszym kolejnym krokiem podczas pisania programu to napisanie funkcji main(). Leniwi mogą skopiować kod podany powyżej, albo bardziej ambitni mogą przepisać go jako dalszą część programu. Dodamy teraz do ciała funkcji instrukcję, która wypisze na ekran tekst "Moja pierwsza aplikacja" oraz drugą, która poczeka, aż użytkownik naciśnie dowolny klawisz.

  1. int main() {
  2.   cout << "Moja pierwsza aplikacja";
  3.   system("pause");
  4.   return 0;
  5. }

(1.) Deklarujemy funkcję main, która zwróci liczbę całkowitą (int) i nie przyjmuje argumentów. (2.) Do wypisywania danych na ekran służy funkcje cout. Jest to strumień danych do którego dane wprowadzamy przy pomocy operatora <<, a ciąg znaków do wypisania zawieramy w "". Instrukcję kończymy znakiem średnik.. (3.) Kolejna instrukcja wysyła do systemu wartość pause co wstrzyma wykonywanie programu, aż użytkownik naciśnie dowolny przycisk. Na sam koniec (4.) Zwracamy wartość 0 i (5.) zamykamy działanie funkcji.

W celu skompilowania i uruchomienia naszego programu naciskamy przycisk F5, albo klikając ten guzik:

Specjalny przycisk do uruchomienia

albo wybierając z menu DEBUG > Rozpocznij Debugowanie (ang. DEBUG > Start Debugging)

Uruchamianie z poziomu menu

Po uruchomieniu powinno się pokazać okno konsoli w którym zostanie wyświetlony tekst Moja pierwsza aplikacja. Okno powinno wyglądać mniej więcej tak:

  1. Moja pierwsza aplikacjaPress any key to continue . . .

Po naciśnięciu dowolnego przycisku aplikacja powinna zakończyć działanie. Jeśli tak jest to gratulacje - pierwszy program został napisany.

Podsumowanie

Lekcja 1 dobiegła końca. Spróbuj wykonać zadania, aby utrwalić materiał.

Zadania

Zadanie 1

Napisz program, który najpierw wypisze tekst Moja Aplikacja, a następnie w oddzielnej instrukcji wypisze na ekran Wiadomość testowa.

Spróbuj uruchomić program bez instrukcji system("pause");