Grimekk
memsoria.pl
- Joined
- Oct 9, 2011
- Messages
- 609
- Reaction score
- 55
Wst?p
Cze??. Surfuj?c po forum zauwa?y?em bardzo ma?o informacji/poradnik?w/kod?w zwi?zanych z C++. Postanowi?em zatem, ?e rozpoczn? kr?tk? seri? dla pocz?tkuj?cych. Wydaj? mi si?, ?e moja wiedza dotycz?ca cpp b?dzie wystarczaj?co du?a aby wyt?umaczy? wam tajniki tego j?zyka. M?wi? od razu, ?e wkurwienie jest nieroz??czn? cz??ci? ?ycia programisty, wi?c przyzwyczajcie si?, ?e b?dziecie par? godzin poprawia? b??dy w jednym kodzie.Dla niewtajemniczonych, czym jest C++:
Wikipedia said:C++ – j?zyk programowania og?lnego przeznaczenia.
Umo?liwia abstrakcj? danych oraz stosowanie kilku paradygmat?w programowania: proceduralnego, obiektowego i generycznego. Charakteryzuje si? wysok? wydajno?ci? kodu wynikowego, bezpo?rednim dost?pem do zasob?w sprz?towych i funkcji systemowych, ?atwo?ci? tworzenia i korzystania z bibliotek (napisanych w C++, C lub innych j?zykach), niezale?no?ci? od konkretnej platformy sprz?towej lub systemowej (co gwarantuje wysok? przeno?no?? kod?w ?r?d?owych) oraz niewielkim ?rodowiskiem uruchomieniowym. Podstawowym obszarem jego zastosowa? s? aplikacje i systemy operacyjne.
C++ zosta? zaprojektowany przez Bjarne Stroustrupa jako rozszerzenie j?zyka C o obiektowe mechanizmy abstrakcji danych i siln? statyczn? kontrol? typ?w. Zachowanie zgodno?ci z j?zykiem C na poziomie kodu ?r?d?owego pozostaje jednym z podstawowych cel?w projektowych kolejnych standard?w j?zyka.
Co b?dzie nam potrzebne?
Po pierwsze - jakie? ciastka i herbata (a mo?e i nawet dwie). Przed czytaniem rozlu?nij si?, wyprostuj i przygotuj na du?o my?lenia. Najwa?niejsz? rzecz? jest kompilator - czyli program w kt?rym b?dziemy pisa? nasze badziewie. Program?w jest serio, multum, aczkolwiek w moim poradniku ja b?d? u?ywa? IDE (integrated development environment, pl. zintegrowane ?rodowisko programistyczne). A mianowicie: code::blocks. Jest to darmowy i bardzo przyjazny program, znajdziecie go po wpisaniu frazy "code::blocks" w google. Je?li nie uda Ci si? znale?? oficjalnej strony producenta i linku do ?ci?gni?cia (nie ten co ma 20-par? mega, tylko ten co ma bodaj?e 72) to znaczy, ?e powiniene? opu?ci? t? stron?. Jestem w stu procentach pewny, ?e nieumiej?tno?? obs?ugiwania si? google == nieumiej?tno?? logicznego my?lenia, a w programowaniu to drugie jest bardzo przydatne
UWAGA! przy instalacji pami?taj aby zaznaczy? GNU GCC Compiler, tak jak na zdj?ciu poni?ej:

Pierwszy test programu
Aby sprawdzi? czy wszystko jest okej z nasz? aplikacj?, klikamy file->new->empty file (lub po prostu control+shift+n). Pojawi nam si? bia?e pole w kt?rym mo?emy pisa?. Wklej tam tamten kod:
PHP:
#include <iostream>
int main()
using namespace std;
{
cout << "ha, dziala!" << endl;
return 0;
}

Po pierwsze: wiem, ?e nie wiesz co zrobi?e?, jak to si? sta?o i jaki jest to gatunek magii.
Po drugie: to jest aplikacja konsolowa, tz. otwiera Ci si? takie "czarne okienko" a w okienku za?, Tw?j program. Chyba nie my?la?e?, ?e od razu b?dziesz robi? neo boty, nie ^^?
Kod
Teraz wyt?umacz? Ci co wpisa?e? i dlaczego co? si? wy?wietli?o. Tak wygl?da nasz kod:
PHP:
#include <iostream>
using namespace std;
int main()
{
cout << "ha, dziala!" << endl;
return 0;
}
PHP:
#include <iostream>
Nast?pne jest to:
PHP:
using namespace std;
PHP:
#include <iostream>
int main()
{
std::cout << "ha, dziala!" << std::endl;
return 0;
}
Miej na uwadze, ?e je?li chcesz sobie upro?ci? dzia?anie to przestrze? nazw Ci pomo?e, a ja w moim tutorialu b?d? jej u?ywa? - je?li nie masz takiej ochoty, sam b?dziesz musia? sobie poradzi? z wklejaniem std:: w niekt?rych miejscach
P??niej mamy to:
PHP:
int main()
Teraz przychodzi czas na klamry (lub kwadratowe nawiasy, jakkolwiek to nazywasz).
PHP:
{
}
Teraz przyszed? czas na instrukcj? kt?ra czyni nasz program, naszym programem. Mianowicie:
PHP:
cout << "ha, dziala" << endl;
Co ciekawe, m?wi?em, ?e endl karze aplikacji przej?? do nowego akapitu. Zawsze gdy przeskakujemy do nowej linii w wiadomo?ci musi si? pojawi? endl. Przyk?ad, taki kod:
PHP:
#include <iostream>
using namespace std;
int main()
{
cout << "ha, dziala!";
cout << "ogolnie taka sytuacja";
return 0;
}

Jak wida?, wszystko jest umieszczone w tym samym wersie. Fascynuj?ce.
Inna rzecz zwi?zana z instrukcj? cout jest fakt, ?e nie trzeba tam wkleja? wiadomo?ci. Mo?na wpisa? tam tak?e np. obliczenia, wtedy wygl?da?o by to tak:
PHP:
cout << 5232+6563 << endl;

Jak wida?, wyskoczy? nam tylko wynik. Gdy chcemy pokaza? ca?e obliczenie, trzeba zmodyfikowa? instrukcj? na to:
PHP:
cout << "5232 + 6563 = " << 5232 + 6563 << endl;

W znacznikach " " wszelkie operacje na liczbach s? ignorowane a wiadomo?? jest wy?wietlana ca?kowicie w ten sam spos?b jak napisana na pocz?tku.
Na razie to na tyle na temat cout
Wracaj?c do tematu - ostatni wers to:
PHP:
return 0;
Podsumowuj?c, w tym dziale nauczyli?my si? wysy?a? wiadomo?ci na ekran. Teraz mo?emy zbija? kas? na pisaniu takowych skomplikowanych program?w i robi? z tego miliony. Gratuluj?, dzi?ki mnie osi?gn??e? sukces ?yciowy i prawdopodobnie zaliczy?e?. Nie ma za co
Zmienna i strumie? wej?ciowy
Teraz b?dzie fajniej, bo u?ytkownik programu b?dzie m?g? poklika? w klawiatur?, a nie tylko czyta? wiadomo?ci od autora aplikacji Aby wczyta? dane do programu b?dzie nam potrzebna zmienna - jak sama nazwa wskazuje, b?dzie si? ona zmienia? w programie. Zmienna to obszar w pami?ci z kt?rego pobierane b?d? dane. Je?eli u?ytkownik co? wpisze do programu, to program b?dzie musia? je gdzie? zapisa?. Typ?w zmiennych jest ca?kiem du?o, na dzie? dzisiejszy b?dziemy u?ywa? jednego.
W programie wygl?da ona tak:
PHP:
#include <iostream>
using namespace std;
int main()
{
int tu_mamy_zmienna;
cout << "wartosc zmiennej to" << tu_mamy_zmienna << endl;
return 0;
}

Na ekranie zobaczyli?my po wiadomo?ci jak?? randomow? liczb?. Spowodowane jest to tym, ?e stworzyli?my zmienn? "tu_mamy_zmienna" ale nie nadali?my jej ?adnej warto?ci, wi?c program wymy?li? swoj?.
Standardowa budowa zmiennej to:
PHP:
int tu_mamy_zmienna
Ale co gdy chcemy nada? warto?? zmiennej? Wtedy jej struktura si? troch? r??ni:
PHP:
int tu_mamy_zmienna = 1234

Mo?emy teraz zobaczy?, ?e program wy?wietli? liczb? 1234 - a to dlatego, ?e zmienna kt?r? tam umie?cili?my mia?a w?a?nie tak? zawarto??.
Warto te? wspomnie?, ?e taki kod:
PHP:
#include <iostream>
using namespace std;
int main()
{
int tu_mamy_zmienna;
tu_mamy_zmienna = 1234;
cout << "wartosc zmiennej to" << tu_mamy_zmienna << endl;
return 0;
}
Teraz, gdy ju? wiemy czym jest zmienna i jak si? z niej korzysta, mo?emy si? nauczy? obs?ugiwania strumienia wej?cia.
Kod ze strumieniem wej?cia wygl?da?by w ten spos?b:
PHP:
#include <iostream>
using namespace std;
int main()
{
int tu_mamy_zmienna;
cout << "podaj zawartosc zmiennej" << endl;
cin >> tu_mamy_zmienna;
cout << "zawartosc zmiennej to: " << tu_mamy_zmienna << endl;
return 0;
}

Liczb? 2 w drugiej linijce - uwaga(!) - wpisa?em sam, a p??niej program j? wy?wietli? w nast?pnym wersie.
Ale co my tu tak naprawd? zrobili?my? Na pocz?tku, w tej instrukcji cout << "podaj zawartosc zmiennej" << endl; poprosili?my program aby wpisa? nam zawarto?? zmiennej. Nast?pnie pojawi?a si? nowa instrukcja:
PHP:
cin >> tu_mamy_zmienna;
W nast?pnym wersie programu po prostu wy?wietlili?my u?ytkownikowi zawarto?? kt?r? sam przed chwil? wpisa?.
Dzi?ki cin mo?emy te? robi? obliczenia, np. w takim programie:
PHP:
#include <iostream>
using namespace std;
int main()
{
int zmienna_a;
int zmienna_b;
cout << "podaj zawartosc zmiennej a" << endl;
cin >> zmienna_a;
cout << "podaj zawartosc zmiennej b" << endl;
cin >> zmienna_b;
cout << "zmienna a + zmienna b = " << zmienna_a + zmienna_b << endl;
return 0;
}

Na samej g?rze stworzyli?my dwie zmienne, zmienna a i b. Kazali?my u?ytkownikowi wpisa? ich zawarto?? a p??niej dodali?my je do siebie. Proste, co?
Tym oto sposobem doszli?my do ko?ca tej lekcji. Twoja wiedza ju? jest... zaskakuj?co du?a(?).
Praca Domowa
Napraw ten kod tak aby dzia?a? poprawnie:
PHP:
#include <iostream>
using namespace std;
int main()
{
int zmienna_a;
int zmienna_b;
cout << "podaj zawartosc zmiennej a" << endl;
cin >> zmienna_a;
cout << "podaj zawartosc zmiennej b" << endl;
cin >> zmienna_b;
cout << "podaj zawartosc zmiennej c" << endl;
cin >> zmiena_c;
cout << "zmienna a + zmienna b = " << zmienna_a + zmienna_b + zmienna_c << endl;
return 0;
}
Koniec
Na dzi? ju? koniec. Nied?ugo wypuszcz? kolejny poradnik w kt?rym b?dziemy kontynuowa? nauk?. Mam nadziej?, ?e si? podoba?o, pozdrawiam!Zabraniam kopiowania tutoriala na inne strony bez mojej zgody.