Ukazatele v programování C: Co je to ukazatel, typy a příklady

Co je Ukazatel v C?

Ukazatel v C, je proměnná, která ukládá adresu jiné proměnné. Ukazatel lze také použít k odkazu na jinou funkci ukazatele. Ukazatel může být zvýšen / snížen, tj. Aby ukazoval na další / předchozí umístění paměti. Účelem ukazatele je ušetřit místo v paměti a dosáhnout rychlejšího času provádění.

Jak používat ukazatele v C

Pokud deklarujeme proměnnou v typu int, v ve skutečnosti uloží hodnotu.

v se nyní rovná nule.

Každá proměnná má však kromě hodnoty také svoji adresu (nebo jednoduše řečeno, kde se nachází v paměti). Adresu lze získat vložením ampersandu (&) před název proměnné.

Pokud na obrazovku vytisknete adresu proměnné, bude vypadat jako zcela náhodné číslo (navíc se může lišit od běhu k běhu).

Zkusme to v praxi s ukazatelem v C příklad

Výstup tohoto programu je -480613588.

Co je to ukazatel? Místo uložení hodnoty bude ukazatel ukládat adresu proměnné.

Proměnná ukazatele

Int * y = & v;

VARIABILNÍ

POINTER

Hodnota uložená na pojmenované adrese úložiště / paměti

Proměnná, která ukazuje na adresu úložiště / paměti jiné proměnné

Deklarace ukazatele

Stejně jako proměnné, ukazatele v C progra Před použitím ve vašem programu je třeba deklarovat mming. Ukazatele lze pojmenovat, kamkoli chcete, pokud se řídí pravidly pojmenování C. Deklarace ukazatele má následující podobu.

data_type * pointer_variable_name;

Zde,

  • data_type je základní typ ukazatele typů proměnných C a označuje typ proměnné, na kterou ukazatel ukazuje.
  • Hvězdička (*: používá se stejná hvězdička pro multiplikaci), což je operátor nesměrování, deklaruje ukazatel.

Podívejme se na některá platná deklarace ukazatele v tomto tutoriálu ukazatelů jazyka C:

Inicializovat ukazatel

Po deklaraci ukazatele jej inicializujeme jako standardní proměnné s adresou proměnné. Pokud ukazatele v programování C nejsou neinicializovány a použity v programu, výsledky jsou nepředvídatelné a potenciálně katastrofické.

K získání adresy proměnné používáme operátor ampersand (&), který je umístěn před názvem proměnné, jejíž adresu potřebujeme. Inicializace ukazatele se provádí s následující syntaxí.

Syntaxe ukazatele

 pointer = &variable; 

Níže je uveden jednoduchý program pro ilustraci ukazatele:

Výstup:

Address stored in a variable p is:60ff08Value stored in a variable p is:10
operátor význam
* Slouží 2 účelům

  1. Deklarace ukazatele
  2. Vrátí hodnotu odkazované proměnné
& Slouží pouze jednomu účelu

  • Vrací adresa proměnné

Typy ukazatelů v C

Následují různé typy ukazatelů v jazyce C:

Null Pointer

Null pointer můžeme vytvořit přiřazením hodnoty null během deklarace ukazatele. Tato metoda je užitečná, pokud ukazateli nemáte přiřazenou žádnou adresu. Nulový ukazatel vždy obsahuje hodnotu 0.

Následující program ilustruje použití nulového ukazatele:

#include <stdio.h>int main(){int *p = NULL; //null pointerprintf("The value inside variable p is:\n%x”,p);return 0;}

Výstup:

The value inside variable p is:0

Void Pointer

V programování C je ukazatel void také nazýván jako obecný ukazatel. Nemá žádný standardní datový typ. Ukazatel void je vytvořen pomocí klíčového slova void. Lze jej použít k uložení adresy jakékoli proměnné.

Následující program ilustruje použití ukazatele neplatnosti:

#include <stdio.h>int main(){void *p = NULL; //void pointerprintf("The size of pointer is:%d\n",sizeof(p));return 0;}

Výstup:

The size of pointer is:4

Divoký ukazatel

Ukazatel je považován za divoký ukazatel, pokud není na nic inicializován. Tyto typy ukazatelů C nejsou efektivní, protože mohou ukazovat na nějaké neznámé místo v paměti, což může způsobit problémy v našem programu a může to vést k havárii programu. Při práci s divokými ukazateli byste měli být vždy opatrní.

Následující program ilustruje použití divokého ukazatele:

#include <stdio.h>int main(){int *p; //wild pointerprintf("\n%d",*p);return
read more

Jak bezpečně odinstalovat Ubuntu z počítače se systémem Windows Dual-Boot

Nainstalovali jste si Ubuntu na svůj počítač spolu s Windows v uspořádání se dvěma systémy.

Ale z nějakého důvodu , věci nejdou moc dobře. Možná jste narazili na nějaké chyby, nebo jste se prostě necítili připraveni na migraci ze systému Windows na Linux.

Nyní máte trochu problém: linuxový oddíl ve vašem počítači disková jednotka, která zabírá místo, které potřebujete pro soubory a složky systému Windows (nebo možná další pokus o duální spuštění read more

Vybraný Outlaw: Bode Miller – Po poslední bráně – Mountain Outlaw

„Když se snažíte mluvit o tom, být nejlepší na světě, je to jako cokoli – umění, hudba nebo herectví – nakonec to musí být ten jedinec, který to dělá. “

oňského 8. listopadu Morgan porodila zdravé dvojčata a porodila je doma v SoCal s pomocí svého manžela a jeho matky. Zatímco jejich život je daleko od místa, kde vyrostl Bode Miller, kabina s žádná tekoucí voda nebo elektřina zasazená v lesích stavu Live-Free-or-Die, snaží se zachovat stejný read more

Které restaurace v Disneylandu nabízejí stolování postav?

Jistě, vy a váš gang jste nadšení z jízdy na Splash Mountain, návštěvy Cars Land, představení nebo dvou, prohlídky vzrušujících jízd v parku a prožití mnoha dalších vrcholů Disneylandu. Ale nemusí existovat žádný větší vrchol, zvláště pro děti, než setkání s Mickey Mouse a jeho gangem. A nemusí existovat lepší způsob, jak se dostat k Mickeyho četě zblízka a osobně, než při jídle s postavou.

Jedna restaurace v Disneyland Parku a čtyři restaurace read more

Jak zjistit velikost mého monitoru

Aktualizováno: 08/02/2020 Computer Hope

Monitory stolních počítačů jsou k dispozici ve velikostech od 13 do 43 palců. Někteří uživatelé mohou využívat svůj televizor jako monitor s velikostí obrazovky 84 palců nebo více. Obrazovky notebooků se obvykle pohybují od 11,6 do 17 palců. I když obecně hraje roli technologie, čím větší je velikost monitoru, tím vyšší jsou náklady. Notebooky se trochu liší, protože pokud jde o cenu, vlastnosti a přenositelnost váží více. U stolních počítačů a notebooků read more

Úzkost a zvonění v uších

Tyto příznaky mohou být důsledkem úzkostných poruch nebo jiných poruch duševního zdraví, které mohou někdy vyvolat fyzické příznaky. Mohou také souviset s vystavením hlasitým zvukům nebo jiným podmínkám. Je důležité sledovat vaše příznaky a to, kdy se objeví. Pokud máte znepokojující příznaky, poraďte se se svým lékařem.

Zatímco níže uvedený seznam lze považovat za vodítko, jak se o těchto stavech poučit, nejedná se o náhradu diagnózy od poskytovatele read more

Beef Rouladen (Čeština)

Vůně Beef Rouladen, která se šíří z kuchyně mé babičky, je jednou z mých nejhezčích vzpomínek z dětství. Tyto lahodné hovězí rohlíky jsou vyrobeny z tenké plátky hovězí slaniny, cibule a kopru!

Výsledek? Tento snadný recept přináší staromódní, vydatné příchutě s taveninou v ústech něžného hovězího masa. Podávejte s bramborovou kaší a krémovým okurkovým salátem na lahodnou večeři!

Co je to Rouladen?

Je to jedno z nejlepších komfortních potravin všech dob!

read more

V kolik hodin začíná McDonald’s Oběd?

Většina lidí si položí otázku: „Kdy McDonald’s podává oběd?“

Většina McDonald’s jsou vlastnictvím franšízy, což znamená, že vlastník si může nastavit svůj obědový plán, který odpovídá jejich podnikání. Většina McDonald’s však začíná podávat oběd v pondělí až pátek v 10:30 a v sobotu a neděli v 11:00.

Podle zákaznického servisu McDonald’s je 90% vlastníků nezávislých na provozním časování a mohou si nastavit vlastní read more

zdravé ženy

Lékařsky zkontrolováno Dr. Rashmi Kudesií

Slabost, bolesti hlavy, dokonce i dech. Tyto příznaky jsou běžné, ale mohou poukazovat na větší problém: anémii z nedostatku železa (IDA). Ačkoli je IDA někdy spojeno s nedostatečným příjmem železa nebo špatnou absorpcí živin, je to nejčastěji způsobeno ztrátou krve, včetně silných menstruačních období.

Pokud jste jednou z milionů žen, které zažívají těžké toku, známého jako těžké děložní krvácení read more

Čerstvý broskvový koláč

Čerstvý broskvový koláč je během broskvové sezóny nutností. Čerstvé broskve jsou navrstveny ve skořápce pekárského koláče a poté doplněny domácí broskvovou polevou. Oblíbená rodina!

Naše sladká Nana (babička mého manžela)… zemřela letos v dubnu. Bylo to docela náhlé a strašně nám chyběla. Byla nejlepší kuchařka a pro svou rodinu vždy připravovala báječné jídlo. Každou neděli na nás čekala nová pochoutka, když jsme přišli na návštěvu. read more