Tot el que heu de saber sobre els indicadors en C.

Aquest article us presentarà el tema que es considera un tema difícil d’aprendre, ens referim al tema dels indicadors en llenguatge C.

Mentre aprenia C, és possible que us hagueu trobat amb el terme 'Punters' i hagueu sentit sovint que és un concepte difícil d'entendre. Els indicadors són útils en diverses tasques de programació i no és tan difícil d’entendre. Aquest article us presentarà indicacions en C i us explicarà per què no són tan difícils d'aprendre com semblen.



A continuació es detallen les indicacions que es tracten en aquest article,



  1. Què és un punter?
  2. Operadors de referència i desreferència
  3. Tipus de punteres
  4. Com utilitzar un punter

Comencem per la primera part d'aquest punter a l'article C,

Punteres en Do

Què és un punter?

Un punter és una variable que és capaç d'emmagatzemar l'adreça d'una variable. Ara, us podeu preguntar per a què serveix? Bàsicament, el punter apunta a la ubicació de memòria de la variable la direcció de la qual es proporciona. Aquesta propietat ajuda a l'assignació dinàmica de memòria, que és un aspecte important de la programació.



Comprenguem que és la sintaxi i donem un cop d’ull a un exemple

Data_Type * punter_name

Exemple: int * ptr

A continuació es mostra el següent fragment d’aquest article de Punteres en C.



Operadors de referència i desreferència

Abans d’endinsar-nos en el concepte de punter, entenem alguns aspectes bàsics que ens ajudaran més endavant. Mentre feu servir punteres, definitivament utilitzarà operadors ‘&’ i ‘*’. Ara és el moment d’entendre el seu significat i ús.

En primer lloc, entenem que l’operador de referència que sovint es diu operador “Adreça de”. L’ús de l’operador (ampersand) amb una variable ens retorna una ubicació de memòria també coneguda com l’adreça de la variable donada.

Exemple

int * ptr int a ptr = & a

L’adreça de la variable ‘a’ s’emmagatzema a la variable ptr.

Ara, entenem l’operador de desferreferència o “Valor en” que es denota amb un asterisc (*). Ajuda a recuperar el valor de la ubicació de memòria que s’emmagatzema a la variable de punter

Exemple

int * ptr int a * ptr = & a printf ('Valor de a =% dn', * ptr)

Tipus de punter El * utilitzat mentre es declara un punter no és per a la desreferència, sinó que indica al compilador que la variable donada és un punter.La declaració d'impressió anterior imprimeix el valor present a la ubicació de la memòria i el punter indica aquesta ubicació de memòria. És a dir, el valor de la variable 'a'.

Hi ha diversos tipus de punteres que difereixen segons la forma en què s’utilitzen en un programa.Veurem alguns dels tipus més utilitzats.

Punter nul

S'assigna un valor nul a un punter quan no esteu segur de quina adreça s'ha d'assignar. Es pot fer assignant valor 'NULL' a un punter en el moment de la declaració. El valor d’aquest punter és 0.

int * ptr = NUL

Punter salvatge

Es crea un punter salvatge no assignant cap valor a una variable de punter. S'ha d'utilitzar amb cura, ja que pot donar lloc a resultats inesperats.

Punter penjat

Quan un punter apunta a una variable suprimida o a una memòria desassignada, el punter es coneix com a punter penjat.Aquest punter apunta cap a una ubicació de memòria inexistent. Fem una ullada al següent fragment d’aquest article de Punteres en C.

requisits previs per al curs d'intel·ligència artificial

Com utilitzar un punter

Ara tenim una breu comprensió dels operadors de referència i desreferència. En aquesta secció, entendrem com s’utilitzen els punteres. Fins ara hem après a declarar un punter i utilitzar-lo per a algunes operacions bàsiques. En aquest moment, tenim prou coneixement per utilitzar punteres per a tasques de programació realment sorprenents fent operacions aritmètiques sobre ells.

Normalment, aquestes operacions es realitzen en matrius. La resta de 2 adreces ens pot donar la distància entre 2 ubicacions de memòria.

int main () {int First_array [10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} / * La nostra matriu on realitzarem operacions * / int * ptr / * Punter * / ptr = First_array / * Assigneu l'adreça de la matriu a la variable de punter * / for (int i = 0 i<10 i++) /*Performing operations*/ { printf('Value of *ptr variable = %dn', *ptr) printf('Value of ptr variable = %pnn', ptr) ptr++ } } 

Sortida

Sortida - Punters a C - EdurekaProveu d’implementar el codi vosaltres mateixos i realitzeu diferents operacions aritmètiques.Utilitzem punteres amb cadenes.

#include #include int main () {char str [] = 'Hello World' / * Creació d'una matriu * / char * p / * Punter * / p = str printf ('Impressió de tots els caràcters del nostre stringn') p = str for (int i = 0i


Amb això arribem al final d’aquest bloc sobre ‘Punteres en C’. Espero que us hagi estat útil i informatiu, estigueu atents a més tutorials sobre temes similars. També podeu consultar el nostre programa de formació t
Podeu obtenir coneixements en profunditat sobre jQuery juntament amb les seves diverses aplicacions per a formació en línia en directe amb assistència les 24 hores del dia, els 7 dies de la setmana i accés durant tota la vidaImplementeu el codi anterior amb diferents cadenes i modificacions. Ara coneixem bé tots els conceptes clau relacionats amb el punter.

Tens alguna pregunta? Esmenta’ls a la secció de comentaris d’aquest bloc i et respondrem.