Minden, amit tudnod kell a mutatókról C.



Ez a cikk bemutatja a trükkösnek tartott témát, amelyet C nyelven mutatunk a mutatók témájára.

A C tanulása közben találkozhatott a „mutatók” kifejezéssel, és gyakran hallotta, hogy ez egy nehezen érthető fogalom. A mutatók segítenek a különféle programozási feladatokban, és ezt nem olyan nehéz megérteni. Ez a cikk bemutatja a C-ben található mutatókkal, és elmondja, miért nem olyan nehéz megtanulni őket, mint amilyennek látszanak.

Az alábbiakban bemutatjuk a cikkben szereplő mutatókat,





  1. Mi az a mutató?
  2. Referencia és visszavonási operátorok
  3. A mutatók típusai
  4. Hogyan használjunk egy mutatót

Kezdjük a mutató első bitjével a C cikkben,

a nagy adatelemzésben használt eszközök

Mutatók C-ben

Mi az a mutató?

A mutató egy olyan változó, amely képes egy változó címének tárolására. Most megkérdezheti, hogy mi haszna van ennek? Alapvetõen a mutató annak a változónak a memóriahelyére mutat, amelynek a címe meg van adva. Ez a tulajdonság segíti a dinamikus memória-elosztást, ami a programozás fontos szempontja.



Értsük meg, hogy ez a szintaxis, és nézzünk meg egy példát

Data_Type * pointername

Példa: int * ptr

Az alábbiakban a következő bit található ebben a C-mutatóban



Referencia és visszavonási operátorok

Mielőtt elmélyülnénk a mutató fogalmában, értsünk meg néhány alapot, amelyek a későbbiekben segítségünkre lesznek. Mutatók használata közben feltétlenül használja az & & és * * operátorokat. Itt az idő, hogy megértsük jelentésüket és használatukat.

Először is, értsük meg a Referencia operátort, amelyet gyakran „Cím” operátornak hívnak. Az (ampersand) operátor változóval történő használata egy memóriahelyet ad vissza, amelyet az adott változó címének is nevezünk.

Példa

int * ptr int a ptr = & a

Az „a” változó címe a ptr változóban van tárolva.

Most értsük meg a De-Referencing vagy az „Value at” operátort, amelyet csillag (*) jelöl. Segít az érték lekérésében a memória helyéről, amelyet a mutató változó tárol

Példa

int * ptr int a * ptr = & a printf ('a =% dn értéke, * ptr)

A mutató típusai A mutató deklarálásakor használt * nem a hivatkozás visszavonására szolgál, hanem azt mondja a fordítónak, hogy az adott változó mutató.A fenti nyomtatási utasítás kinyomtatja a memória helyén lévő értéket, és ezt a memóriahelyet a mutató mutatja. azaz az „a” változó értéke.

Különböző típusú mutatók léteznek, amelyek különböznek attól, hogy miként használják őket a programban.Megnézzük a leggyakrabban használt típusokat.

Null Pointer

Null értéket rendelünk egy mutatóhoz, ha nem biztos abban, hogy milyen címet kell hozzárendelni. Megtehető úgy, hogy a deklaráláskor egy mutatóhoz NULL értéket rendelünk. A mutató értéke 0.

absztrakció c ++ -ban
int * ptr = NULL

Vad Pointer

java konvertálja a dupla egész számra

A vadmutató úgy jön létre, hogy nem rendel hozzá értéket egy mutatóváltozóhoz. Óvatosan kell használni, mivel váratlan eredményeket okozhat.

Lógó mutató

Amikor egy mutató egy törölt változóra vagy a lefoglalt memóriára mutat, a mutatót függő mutatónak nevezik.Ez a mutató egy nem létező memóriahelyre mutat. Vessünk egy pillantást ennek a C-cikknek a következő mutatóira

Hogyan használjunk egy mutatót

Most rövid ismeretekkel rendelkezünk a referencia és a dereference operátorokról. Ebben a szakaszban megértjük, hogyan kell használni a mutatókat. Mostanáig megtanultuk, hogyan kell deklarálni egy mutatót és használni néhány alapvető művelethez. Ezen a ponton elegendő tudással rendelkezünk ahhoz, hogy mutatókat használjunk igazán elképesztő programozási feladatokhoz azáltal, hogy számtani műveleteket hajtunk végre rajtuk.

Normál esetben ezeket a műveleteket tömbökön hajtják végre. 2 cím levonása megadhatja számunkra a 2 memóriahely közötti távolságot.

int main () {int First_array [10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} / * Tömbünk, amelyen műveleteket fogunk végrehajtani * / int * ptr / * Pointer * / ptr = First_array / * Rendelje hozzá a tömb címét a * / for mutatóváltozóhoz (int i = 0 i<10 i++) /*Performing operations*/ { printf('Value of *ptr variable = %dn', *ptr) printf('Value of ptr variable = %pnn', ptr) ptr++ } } 

Kimenet

Kimenet - Mutatók a C - EdurekábanPróbálja meg egyedül végrehajtani a kódot, és hajtson végre különböző számtani műveleteket.Használjunk karakterláncokkal ellátott mutatókat.

#include #include int main () {char str [] = 'Hello World' / * Tömb létrehozása * / char * p / * Mutató * / p = str printf ('A karakterláncunk összes karakterének nyomtatása') p = str for (int i = 0i


Ezzel eljutottunk a blog „Pointers In C” -jéhez. Remélem, hogy ezt informatívnak és hasznosnak találta, kövesse nyomon a hasonló témájú oktatóanyagokat. Lehet, hogy Ön is megvásárolja képzési programunkat
o alapos ismereteket szerezhet a jQuery-ről, annak különféle alkalmazásaival együtt élő online képzéshez 24/7 támogatással és egész életen át elérhető hozzáféréssel.Végezze el a fenti kódot különböző karakterláncokkal és módosításokkal. Most már jól értjük a mutatóval kapcsolatos összes kulcsfontosságú fogalmat.

Van egy kérdésünk? Említse meg őket a blog megjegyzés rovatában, és mi kapcsolatba lépünk Önnel.