V tomto článku najdete relevantní příklady, které vám pomohou pracovat s ukazateli pro přístup k datům v rámci struktury.
Ukazatel proměnná může být vytvořen nejen pro nativní typů, jako ( int
, float
, double
atd.), Ale mohou být také vytvořeny pro uživatelem definované typy, jako je struktura.
Pokud nevíte, co jsou ukazatele, navštivte ukazatele C ++.
Takto můžete vytvořit ukazatel pro struktury:
#include using namespace std; struct temp ( int i; float f; ); int main() ( temp *ptr; return 0; )
Tento program vytvoří ukazatel ptr temp struktury struktury.
Příklad: Ukazatele na strukturu
#include using namespace std; struct Distance ( int feet; float inch; ); int main() ( Distance *ptr, d; ptr = &d; cout <> (*ptr).feet; cout <> (*ptr).inch; cout << "Displaying information." << endl; cout << "Distance = " << (*ptr).feet << " feet " << (*ptr).inch << " inches"; return 0; )
Výstup
Zadejte nohy: 4 Zadejte palce: 3,5 Zobrazení informací. Vzdálenost = 4 stopy 3,5 palce
V tomto programu je definována proměnná ukazatele ptr a normální proměnná d typové struktury Vzdálenost.
Adresa proměnné d je uložena do proměnné ukazatele, to znamená, že ptr ukazuje na proměnnou d. Potom je členská funkce proměnné d přístupná pomocí ukazatele.
Poznámka: Vzhledem k tomu, pointer ptr směřující do proměnné d v tomto programu, (*ptr).inch
a d.inch
je samý buňka. Podobně, (*ptr).feet
a d.feet
je přesně stejná buňka.
Syntaxe pro přístup k členské funkci pomocí ukazatele je ošklivá a existuje alternativní zápis -> který je běžnější.
ptr-> nohy jsou stejné jako (* ptr). nohy ptr-> palec jsou stejné jako (* ptr). palce