Video: Rozdíl Mezi Ukazatelem A Polem
2024 Autor: Mildred Bawerman | [email protected]. Naposledy změněno: 2023-12-16 08:37
Ukazatel vs Array
Ukazatel je datový typ, který obsahuje odkaz na paměťové místo (tj. Proměnná ukazatele ukládá adresu paměťového místa, ve kterém jsou uložena některá data). Pole jsou nejběžněji používanou datovou strukturou k uložení kolekce prvků. Většina programovacích jazyků poskytuje metody pro snadné deklarace polí a přístup k prvkům v polích.
Co je to ukazatel?
Ukazatel je datový typ, který ukládá adresu paměťového místa, ve kterém jsou uložena některá data. Jinými slovy, ukazatel obsahuje odkaz na paměťové místo. Přístup k datům uloženým v paměti, na které odkazuje ukazatel, se nazývá dereferencování. Při provádění opakujících se operací, jako je procházení stromů / řetězců, vyhledávání tabulek atd., By použití ukazatelů zlepšilo výkon. Důvodem je, že dereferencování a kopírování ukazatelů je levnější než skutečné kopírování a přístup k datům, na která ukazatele ukazují. Nulový ukazatel je ukazatel, který na nic neukazuje. V Javě by přístup k nulovému ukazateli vygeneroval výjimku nazvanou NullPointerException.
Co je to pole?
Na obrázku 1 je ukázka kódu, která se obvykle používá k deklaraci a přiřazení hodnot k poli. Obrázek 2 ukazuje, jak by pole vypadalo v paměti.
hodnoty [0] = 100; hodnoty [1] = 101; hodnoty [2] = 102; hodnoty [3] = 103; hodnoty [4] = 104; |
Obrázek 1: Kód pro deklaraci a přiřazení hodnot k poli
100 | 101 | 102 | 103 | 104 |
Rejstřík: 0 | 1 | 2 | 3 | 4 |
Obrázek 2: Pole uložené v paměti
Výše uvedený kód definuje pole, do kterého lze uložit 5 celých čísel a je k nim přístup pomocí indexů 0 až 4. Jednou důležitou vlastností pole je to, že celé pole je přiděleno jako jeden blok paměti a každý prvek má v poli svůj vlastní prostor. Jakmile je pole definováno, jeho velikost je pevná. Takže pokud si nejste jisti velikostí pole v době kompilace, budete muset definovat dostatečně velké pole, abyste byli na bezpečné straně. Většinou ale ve skutečnosti použijeme menší počet prvků, než kolik jsme přidělili. Značná část paměti je tedy skutečně zbytečná. Na druhou stranu, pokud „dostatečně velké pole“není ve skutečnosti dostatečně velké, program by selhal.
Jaký je rozdíl mezi ukazateli a poli?
Ukazatel je datový typ, který ukládá adresu paměťového místa, ve kterém jsou uložena některá data, zatímco pole jsou nejčastěji používanou datovou strukturou k ukládání kolekce prvků. V programovacím jazyce C se indexování pole provádí pomocí aritmetiky ukazatele (tj. I-tý prvek pole x by byl ekvivalentní * (x + i)). Proto v C lze sadu ukazatelů, které ukazují na sadu paměťových míst, které následují, považovat za pole. Dále existuje rozdíl v tom, jak operátor sizeof pracuje na ukazatelích a polích. Při použití na pole vrátí operátor sizeof celou velikost pole, zatímco při použití na ukazatel vrátí pouze velikost ukazatele.
Doporučená:
Rozdíl Mezi Magnetickým Polem A Magnetickou Silou
Magnetické pole vs. magnetická síla Magnetismus je velmi důležitá vlastnost hmoty, která se používá v široké škále aplikací. Magnetické pole je th
Rozdíl Mezi Severním A Jižním Pólem
Severní pól vs jižní pól Severní pól a jižní pól jsou dvě velmi důležitá témata magnetismu. Tyto koncepty jsou nesmírně cenné, pokud jde o f
Rozdíl Mezi Zrychlením A Gravitačním Polem
Zrychlení vs. gravitační pole Zrychlení a gravitační pole jsou dva pojmy diskutované v mechanice ve fyzice. Tyto dva pojmy jsou equa
Rozdíl Mezi Gravitačním Polem A Elektrickým Polem
Gravitační pole vs elektrické pole Elektrické pole a gravitační pole jsou dva pojmy spojené s modelem pole. Obě tato pole jsou modely t
Rozdíl Mezi Elektrickým Polem A Magnetickým Polem
Elektrické pole vs magnetické pole Elektrické pole a magnetické pole jsou neviditelné linie sil generovaných jevy, jako je magnetismus Země, hrom