Skip to main content

 

Pointer භාවිතයෙ වැදගත් අවස්ථා


  කලින් පාඩම් වලට අදාල ප්‍රශ්න දෙකක්


Q   dynamic memory allocation භාවිතා කිරීමට හේතුව   හා ඊට අදාළ function?

Q2    reference & ඔපරේටර් එක භාවිතා කිරීමට හේතුව


 භාවිතා කරන මූලික අවස්ථා


  • call by reference

  •  dynamic memory allocation

  •  accessing file


call by reference


 මේක තේරුම් ගන්න නම් පහත උදාහරණ දෙක   හොඳින් බලන්න බලන්න.


අගයන් දෙකක් මාරු කර ගැනීම function  එකක් ලිවීම්

Call by value  


  void swap (int a, int b)  //  {

     int c;  // 

     c=a;

     a=b;

     b=c;


}






මෙහිදී අගයන් මාරු වෙන්නේ අදාල ෆන්ෂන් එක තුළ පමණි. Main function එක තුල කිසිවක් වෙනස් වී නොමැත.
ඊට හේතුව නම් main function එක තුළ පවතින variable වෙනත් function එකක සිට මාරු කිරීමට නොහැකි වීමයි


Call by reference

void swap1 (int *a, int *b)

{

    int c;

     c=*a;

    *a=*b;

    *b=c;

  }


Main function එක තුළද අගයන් මාරු වීමකට ලක්වී ඇත


Comments