GeeksforGeeks

int const *

int const* este pointer la număr întreg constant
aceasta înseamnă că variabila declarată este un pointer, indicând un număr întreg constant. În mod eficient, acest lucru implică faptul că indicatorul indică o valoare care nu ar trebui modificată. Const qualifier nu afectează indicatorul în acest scenariu, astfel încât indicatorul este permis să indice la o altă adresă.
primul cuvânt cheie const poate merge de fiecare parte a tipului de date, prin urmare, int const* este echivalent cu const int*.

int *const

int *const este un indicator constant la număr întreg

aceasta înseamnă că variabila declarată este un indicator constant care indică un număr întreg. În mod eficient, acest lucru implică faptul că indicatorul nu ar trebui să indice o altă adresă. Const qualifier nu afectează valoarea integer în acest scenariu, astfel încât valoarea stocată în adresa este permis să se schimbe.

const int* const

const int* const este un indicator constant la număr întreg constant

aceasta înseamnă că variabila declarată este un indicator constant care indică un număr întreg constant. În mod eficient, acest lucru implică faptul că un indicator constant indică o valoare constantă. Prin urmare, nici indicatorul nu ar trebui să indice o nouă adresă, nici valoarea indicată nu ar trebui modificată.
primul cuvânt cheie const poate merge de fiecare parte a tipului de date, prin urmare const int* const este echivalent cu int const* const.

harta memoriei

o modalitate de a vă aminti sintaxa (conform Bjarne Stroustrup) este regula spirală-
regula spune, începeți de la numele variabilei și deplasați-vă în sensul acelor de ceasornic la următorul pointer sau tip. Repetați până se termină expresia.

regula poate fi văzută și ca decodarea sintaxei de la dreapta la stânga.

prin urmare,

  • int const * is pointer to const int
  • int * const is const pointer to int
  • int const* const is const pointer to const int

folosind această regulă, chiar și declarațiile complexe pot fi decodate ca,

  • int * * const este un indicator const la pointer la un int.
  • int * const * este un pointer către const pointer către un int.
  • int const ** este un pointer către un pointer către un const int.
  • int * const * const este un indicator const la un indicator const la un int.

cititor de atenție! Nu te opri din învățat acum. Faceți rost de toate conceptele importante C++ Foundation și STL cu cursurile c++ Foundation și STL la un preț prietenos pentru studenți și deveniți gata pentru industrie.

Articolul Tag-Uri:

C

Practica Tag-Uri:

Lasă un răspuns

Adresa ta de email nu va fi publicată.