programovani:ukazatele
Toto je starší verze dokumentu!
Ukazatelé a reference
Ukazatel (anglicky pointer) je v informatice označení pro datový typ, který slouží k uložení adresy v paměti počítače. Ukazatel slouží pro zpřístupnění dat, která jsou na příslušné adrese v operační paměti uložena. Zdroj: Wiki
Ukazatel (pointer)
deklarce proměnné
char promenna; char dalsi_promenna;
deklarace ukazatele - *
char *ukazatel; // vznikne místo v paměni pro uložení odkazu na nějakou proměnnou typu char
operátor reference - &
ukazatel = &promenna; // přiřazení adresy v paměni na proměnou pomocí & (ampersand)
operace dereference - *
dalsi_promenna = *ukazatel;
Příklad
- ukazatel.cpp
#include <iostream> using namespace std; int *ukazatel, promenna, dalsi_promenna; int main () { promenna = 2018; // přiřazení hodnoty do promenné ukazatel = &promenna; // uložení adresy paměti na proměnnou 'promenna' dalsi_promenna = *ukazatel; // do jiné proměnné uložení HODNOTY přes ukazatel cout << dalsi_promenna; int i; // definice proměnné i datového typu int int a[3]; // definice proměnné a, pole typu int se třemi prvky int *p; // definice proměnné p, ukazatele na datový typ int p = &i; // hodnota pointeru je nastavena na adresu proměnné i *p = 3; // do paměti na adresu odkazovanou ukazatelem p se uloží hodnota 3 p = &(a[2]); // hodnota pointeru je nastavena na prvek pole a s indexem 2 p = p - 2; // hodnota pointeru je nastavena na prvek pole a s indexem 0 (tj. první prvek pole) *p = 5; // do paměti na adresu odkazovanou p se uloží hodnota 5 (tedy první prvek pole má tuto hodnotu) return 0; }
programovani/ukazatele.1515745487.txt.gz · Poslední úprava: 2018/01/12 08:24 autor: Zdeněk Havlík