|
||
Práce s textovými řetězciV dnešní lekci využijeme znalostí z předchozí lekce, kde jsme se naučili pracovat se strukturovanými proměnnými typu pole. Ukážeme si totiž, že pole nemusí být určeno pouze pro číselné hodnoty, ale i pro znaky. Nejprve si však udělejme malé opakování. Již víme, že pokud chceme do paměti uložit nějaký znak popřípadě celý řetězec znaků, použijeme k tomuto účelu proměnné typu char nebo string. Například:
char znak = 'k';
Do proměnné typu char lze uložit pouze jeden znak, který uvádíme mezi dva apostrofy. Naopak do proměnné typu string můžeme uložit libovolné řetězce znaků. Pojďme se na tyto řetězce podívat blíže. Každý řetězec je ve skutečnosti složen z jednotlivých znaků. Proto můžeme větu z předchozího příkladu uložit do paměti také pomocí pole:
char nova_veta[] = "Dnes je ale krasny den!";
Tímto zápisem jsme si vytvořili pole znaků (charů), kde do každého "chlívku" uložíme právě jeden znak. Výhodou je, že nemusíme znaky do pole vkládat po jednom, jako je to v této ukázce:
char nova_veta[] = {'s', 'l', 'o', 'v', 'o', '\0'};
Ale můžeme je zapsat jako řetězec:
char nova_veta[] = "slovo";
Tento řetězec bude automaticky rozdělen na jednotlivé znaky a navíc bude obsahovat i ukončovací znak (\0). Dále můžeme vytvořit pole znaků, které má určitý rozměr:
char jmeno[20] = "Pepe";
Tento zápis vytvoří v paměti pole pro uložení až 20 znaků. Tato hodnota je maximalní a více znaků než 20 do pole nepůjde uložit. Naopak ale můžeme uložit méně než 20 znaků, tak jak je to například v této ukázce. UžitíPři práci s poli znaků, můžeme stejně jako u proměnných typu string, používat funkce pro načtení a výpis tedy cin a cout. Například:
char jmeno[20];
Co ovšem používat nemůžeme, je přiřazovací příkaz. Například:
char jmeno[20];
Všechny tyto "pokusy" o přiřazení řetězce Adam do pole jmenopovedou k chybě. Proč tomu tak je, lépe pochopíme až v další lekci, kde se budeme zabývat ukazateli. |
Počítadlo |
| Nahoru
Úvod |
HTML |
CSS |
C++ |
JavaScript |
Grafika & design |
Webhosting
|