Zpět na seznam článků     Číst komentáře (30)     Verze pro tisk

C++ třetí díl

Autor: Neuro   
6.9.2007

třetí díl


V tomto díle si probereme dopodrobna funkce cout, cin, ukážeme si nějaké příklady použití a podíváme se také na práci s řádky \n, \t, \a, atd... a podíváme se na jednoduché funkce.

COUT

Jak jste si již všimli, příkaz cout slouží k výpisu textu na obrazovku. A co vlastně cout je? Je to předdejinovaný objekt, který ví, jak má zobrazit řetězce, čísla i samostatné znaky. Pokud proměnná string reprezentuje řetězec, zobrazí ho takhle:
cout << string;
Příkaz (objekt) cout je definován v hlavičkovém souboru iostream. Vlastnosti tohoto objektu zahrnují operátor <<, který vkládá informace na pravou stranu. V podstatě vkládá informace do výstupního proudu. To by bylo vše o příkazu (objektu)cout. Myslím, že na tom není nic k nepochopení.

CIN

Tento příkaz je opět definován v hlavičkovém souboru iostream. Tento příkaz slouží k zadávání hodnot do proměnných během chodu programu. Nejlépe Vám to vysvětlím na následujícím příkladu:

#include <iostream>
using namespace std;
int main()
{
     int vek;
     cout << "Kolik je ti let?\n";
     cin >> vek;
     cout << "Dekuji, je ti "<< vek << "let\n";
     return 0;
}

Na řádce s příkazem cin si všimněte změněného operátoru >>. To nám říká, že hodnotu teprve zadáme.
Na další řádce vidíme, že pomocí příkazu cout vypíšeme hodnotu, kterou jsme zadali o řádek víš. Myslím, že není třeba dále o tomto něco vysětlovat. Pokud dojde k jinému použití těchto příkazů, tak opět vysvětlím, proč to tak je.
Ještě bych rád uvedl, že operátory << >> byly vybrány proto, aby vizuálně ukázaly, kterým směrem informace teče.

Práce s řádky

Jak jste si již všimli, tak v téměř každém demonstrativním příkladě jsem uváděl na řádce s funkcí cout zvláštní znaky na konci řádku \n. Toto označení znamená konec řádku a při výstupu znaků Vás automaticky přesměruje na novou řádku. Například:

cout << "Hello\nHell";
Vytiskne:
Hello
Hell

Znak nového řádku \n můžete použít při výstupu kolikrát chcete.
Dále tu máme znak tabulátoru \t, který Vám jednoduše při výstupu udělá mezeru, jako kdyby jste psaly a stiskly tabulátor. Použití je opět stejné, jako u znaku nového řádku.
Pak zde máme znak písknutí \a, který ovšem v dnešní době moc nefunguje, poněvadž je zapotřebí mít v PC speaker. Znak písknutí nefunguje na OS Unix a na některých typech procesorů.
Ještě bych rád uvedl, že tyto znaky se píší ještě před uzavřením uvozovek, čili:
cout << "ahoj"\n;   // chybně
cout << "ahoj\n";   // správně
Snad k tomuhle nemusím více psát a pochopí to i ti pomalejší.

Jednoduché funkce

Funkce jsou velmi důležité, protože by bez nich pokročilejší programování nemělo smysl. Jsou to jakési moduly, ze kterých jsou postaveny programy v C++, jsou podstatné pro OOP. Funkce v C++ mají dvě varianty: Buď nám vracejí nějakou hodnotu nebo nevracejí nic.
Uživatel si může vytvořit své vlastní funkce libovolného typu.

Funkce s návratovou hodnotou

Funkce, které mají návratovou hodnotu produkují hodnoty, které lze přiřadit proměnným. Standardní knihovna C++ obsahuje funkci sqrt(), která nám vrátí druhou odmocninu čísla. Viz. ukázka:
a = sqrt(6,25);
Tento příklad nám vrátí číslo 2,5 a přiřadí nám ji do proměnné a. Hodnota v závorce je informace, která je předávána funkci. Tato informace se nazývá parametr. Výsledek 2,5 se nazývá návratová hodnota funkce. Kompilátor musí vědět, jaký druh parametrů funkce používá a jaký má typ návratové hodnoty. Pokud kompilátor tuto informaci ztratí, nemá jak interpretovat návratovou hodnotu. C++ však nabízí vyřešení tohoto problému funkčními prototypy.

Funkční prototypy

Funkční prototyp dělá pro uto funkci to samé, co deklarace pro proměnnou říká, jaké se vyžadují typy. Knihovna C++ definuje funkci sqrt(), která automaticky přijímá číslo s desetinnou čárkou jako parametr a vrátí nám číslo stejného typu.

Funkce definované uživatelem

Standardní knihovny poskytují více než 140 předdefinovaných funkcí. Pokud se Vám některé tyto předdefinované funkce hodí, není třeba definovat své vlastní. Můžete používat již ty předdefinované. Vzpomeňte si, že jsme již používali funkci main(), kterou musí obsahovat každý program napsaný v C++. Následující výpis Vám předvede jak si svou vlastní funkci definovat.

#include <iostream>
using namespace std;
void eva(int); // funkcni prototyp eva()
int main()
{
     eva(5); // volani funkce eva()
     cout << "Vloz cislo: ";
     int a;
     cin >> a
     eva(a); // dalsi volani
     return 0;
}
void eva(int b)
{
     cout << "Eva ma cislo " << b << "\n";

Pokud jste si všimli, tak funkce main() volá dvakrát funkci eva(). Jednou s parametrem 5 a jednou s proměnným parametrem a. Zkompilujeme a program nám vypíše toto:
Eva má cislo 5
Vloz cislo:11
Eva ma cislo 11
Tímto bych tento díl zakončil a zdůrazňuji, že je nutné zkoušet. V příštím díle dokončíme jednoduché funkce a podíváme se na vytváření a práci s poli.
Doufám, že Vám tento díl něco dal, nebo že jste si v něm něco zopakovali. Možná je to sepsané kostrbatě, ale nejsem žurnalista, takže psaní delších věcí není nic moc pro mě. Kritiku, famfáry nebo připomínky do komentářů.

Líbil se Vám článek?
Budeme potěšeni, pokud vás zaujme také reklamní nabídka

Social Bookmarking

     





Hodnocení/Hlasovalo: 2.15/108

1  2  3  4  5    
(známkování jako ve škole)