Operator de indirecție

Autor: Lewis Jackson
Data Creației: 8 Mai 2021
Data Actualizării: 1 Iulie 2024
Anonim
Redirection in Linux - Linux Tutorial 8
Video: Redirection in Linux - Linux Tutorial 8

Conţinut

Definiție - Ce înseamnă operator de Indirecție?

Un operator de indirecție, în conținutul lui C #, este un operator utilizat pentru a obține valoarea unei variabile către care indică un indicator. În timp ce un indicator indicat către o variabilă oferă un acces indirect la valoarea variabilei stocate pe adresa sa de memorie, operatorul de indirecție abandonează indicatorul și returnează valoarea variabilei la locația de memorie. Operatorul de indirecție este un operator unar reprezentat de simbolul (*).

Operatorul de indirecție poate fi utilizat într-un indicator către un indicator către un număr întreg, un tablou unidimensional de indicatori la numere întregi, un pointer către un char și un indicator la un tip necunoscut.

Operatorul de indirecție este, de asemenea, cunoscut sub numele de operator de dereferire.

O introducere în Microsoft Azure și Microsoft Cloud | În acest ghid, veți afla despre ce este vorba despre cloud computing și despre cum Microsoft Azure vă poate ajuta să migrați și să conduceți afacerea din cloud.

Techopedia explică operatorul de Indirecție

Simbolul (*) este utilizat în declararea tipurilor de indicatori și în efectuarea indirecției indicatoare, în timp ce operatorul „adresă-a” () adresează adresa unei variabile. Prin urmare, operatorul de indirecție și adresa operatorului sunt invers unul de altul.

C # permite utilizarea indicatoarelor doar într-o regiune nesigură, ceea ce implică faptul că siguranța codului în acea regiune nu este verificată de limbajul comun runtime (CLR). În regiunea nesigură, operatorul de indirecție are voie să citească și să scrie într-un indicator. Următoarele declarații C # ilustrează utilizarea operatorului de indirecție:
  • int a = 1, b; // linia 1
  • int * pInt = & a; // randul 2
  • b = * pInt; // linia 3
În prima linie de mai sus, a și b sunt variabile întregi și a i se atribuie o valoare de 1. În linia 2, adresa lui a este stocată în indicatorul întreg pInt (linia 2). Operatorul de dereregare este utilizat în linia 3 pentru a atribui valoarea la adresa indicată de pInt la variabila întreagă b.

Operatorul de indirecție ar trebui utilizat pentru a elibera un pointer valid cu o adresă aliniată la tipul pe care îl indică, astfel încât să se evite comportamentul nedefinit la timpul de execuție. Nu trebuie aplicat pe un pointer void sau pe o expresie care nu este de tip pointer, pentru a evita erorile compilatorului. Cu toate acestea, după ce ați aruncat un pointer de gol la tipul de indicator drept, poate fi utilizat operatorul de indirecție.

Când se declară mai multe indicatoare într-o singură instrucțiune, operatorul de indirecție ar trebui să fie scris o singură dată cu tipul de bază și să nu fie repetat pentru fiecare nume de pointer. Operatorul de indirecție este distributiv în C #, spre deosebire de C și C ++. Când operatorul de indirecție este aplicat unui indicator nul, acesta are ca rezultat un comportament definit de implementare. Întrucât acest operator este utilizat într-un cont nesigur, cuvântul cheie nesigur trebuie utilizat înaintea acestuia, împreună cu opțiunea / nesigur în timpul compilării. Această definiție a fost scrisă în versiunea lui C #