Paano Magpatupad ng Mga Pahiwatig Sa C ++?



Ipakilala ka ng artikulong ito sa konsepto ng mga payo sa C ++ at pagkatapos ay sundin ito sa isang sumusuporta sa praktikal na pagpapakita.

Mga pahiwatig sa C ++ ay isang variable na humahawak sa address ng isa pang variable sa c ++. Ang address ay naka-imbak sa variable ng pointer at makakatulong sa pagpapatupad ng call-by-refer.

Saklaw ang artikulong ito sa artikulong ito,





Simula sa artikulong ito sa Pointers sa C ++

Syntax:



datatype * pointername HALIMBAWA: int * ptr
  • Ang isang variable ng pointer ay may isang * sign bago ang pangalan nito.
  • Ang isang pointer ay tinatawag ding tagahanap o tagapagpahiwatig.

Mga Gamit Ng Pointer:

  • Pag-alok ng Dynamic na Memory
  • Sa Iba`t ibang mga Programa Ng Mga Array, Istraktura, At Mga Pag-andar

Narito ang Isang Halimbawang Code:

# isama ang paggamit ng namespace std int main () {int num = 17 int * ptr ptr = & num cout<< 'Value at ptr = ' << ptr << 'n' cout << 'Value at var = ' << num << 'n' cout << 'Value at *ptr = ' << *ptr << 'n' } 

Output:
Output- Mga pahiwatig sa C ++ - Edureka



Paliwanag:

Sa program sa itaas, ipinapakita namin ang pangunahing pagtatrabaho ng isang pointer. Mayroon kaming isang integer variable num na may halagang 17. Mayroon kaming pointer variable ptr ng uri ng int. Itinatalaga namin ang address ng num sa pointer ptr.

Una naming nai-print ang halaga ng ptr, iyon ang address. Susunod, nai-print namin ang halaga ng num at sa dulo, nai-print namin ang halaga sa lokasyon na hawak ng pointer ptr.

Nagpapatuloy sa artikulong ito sa Mga Pointer sa C ++

Mga Puro at Aray:

Maaari naming isaalang-alang ang unang elemento ng isang array bilang isang pointer, dahil ang pangalan ng array ay naglalaman ng address ng unang elemento. Maaari naming gamitin ang isang pointer sa sumusunod na fashion.

Narito ang isang halimbawa ng code:

# isama ang paggamit ng namespace std int main () {int arr [3] = {5, 10, 20} int * ptr ptr = arr cout<< 'Elements of the array are: ' cout << ptr[0] << ' ' << ptr[1] << ' ' << ptr[2] } 
 Output: 

Paliwanag:

Sa program sa itaas, ipinapakita namin ang pangunahing pagtatrabaho ng isang pointer na may isang array. Mayroon kaming isang arr arr na may halagang 5,10,20. Mayroon kaming variable pointer ptr ng uri ng int. Itinatalaga namin ang address ng arr sa pointer ptr.

Una naming nai-print ang halaga ng ptr [0], iyon ang unang elemento ng array. Susunod, nai-print namin ang pangalawa at pangatlong elemento ayon sa pagkakabanggit. Tulad ng mga elemento ng array na naka-imbak nang magkakasunod, kaya maaaring ma-access ng pointer ang iba pang lokasyon ng array sa pamamagitan ng pagdaragdag.

Nagpapatuloy sa artikulong ito sa Mga Pointer sa C ++

Mga Null Pointer:

Mayroong uri ng mga payo na walang halaga at humawak ng isang null na halaga

Halimbawa :

kailan gagamitin ang java na ito
int * ptr = NULL

Kapaki-pakinabang ang mga ito sa mga istruktura ng data tulad ng isang naka-link na listahan.

Nagpapatuloy sa artikulong ito sa Mga Pointer sa C ++

Mga Void Pointer:

Ito ang uri ng mga pahiwatig na walang uri ng pagbabalik.

Nagpapatuloy sa artikulong ito sa Mga Pointer sa C ++

Pagpapatakbo ng Pointer Arithmetic:

Ang iba't ibang mga operasyon ay maaaring isagawa sa mga payo. Narito ang ilang mahahalagang uri.

  • nadagdagan (++)
  • nabawasan (-)
  • pagkakaiba sa pagitan ng dalawang mga payo (p1-p2)
  • pagdaragdag ng isang integer sa isang pointer (+ o + =)
  • pagbabawas ng isang integer mula sa isang pointer (- o - =)

Narito ang isang code upang i-demo ang ilan sa mga pagpapatakbo na ito:

pag-install ng php sa windows 10
# isama ang paggamit ng namespace std int main () {int arr [3] = {10, 100, 200} int * ptr ptr = arr para sa (int i = 0 i<3 i++) { cout << 'Value at different locations of array using *ptr = ' << *ptr << 'n' ptr++ } } 

Output:

Paliwanag:

Ipinapakita namin ang simpleng pagpapatakbo ng aritmetika ng pagdaragdag ng variable ng pointer ay ipinapakita sa nabanggit na programa.

Nagpapatuloy sa artikulong ito sa Mga Pointer sa C ++

Turo sa Pointer:

Sa ganitong uri ng system, mayroong dalawang mga payo. Ang unang pointer ay tumuturo sa pangalawang pointer at ang pangalawang pointer ay tumuturo sa variable na humahawak sa halaga.

Narito ang isang Halimbawa ng Code:

# isama ang paggamit ng namespace std int main () {int num int * ptr int ** pptr num = 3000 ptr = & num pptr = & ptr cout<< 'Value of num :' << num<< endl cout << 'Value available at *ptr :' << *ptr << endl cout << 'Value available at **pptr :' << **pptr << endl return 0 } 

Output:

Nagpapatuloy sa artikulong ito sa Mga Pointer sa C ++

Turo sa Mga Pag-andar:

Ito ay isang paraan ng pagpasa ng mga payo sa mga pagpapaandar. Ang parameter ng pag-andar ay dapat ideklara bilang isang uri ng pointer. Ipinapakita ito sa code sa ibaba,

# isama ang paggamit ng namespace std float getAverage (int * arr, int size) int main () {int balanse [5] = {1432, 232, 3232, 17, 502} float avg avg = getAverage (balanse, 5) cout<< 'Average value is: ' << avg << endl return 0 } float getAverage(int *arr, int size) { int i, sum = 0 double avg for (i = 0 i < size ++i) { sum += arr[i] } avg = double(sum) / size return avg } 


Paglabas

Ito ay kung paano namin ipinapasa ang isang pointer sa isang pagpapaandar.

Sa gayon ay natapos na kami sa artikulong ito sa 'Mga Puro sa C ++'. Kung nais mong matuto nang higit pa, tingnan ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online. ay idinisenyo upang sanayin ka para sa parehong core at advanced na konsepto ng Java kasama ang iba't ibang mga balangkas ng Java tulad ng Hibernate & Spring.

May tanong ba sa amin? Mangyaring banggitin ito sa seksyon ng mga komento ng blog na ito at babalikan ka namin sa lalong madaling panahon.