topical media & game development

talk show tell print

basic-program-code-05-Ex5-03.c

? / basic-program-code-05-Ex5-03.c


  // Ex5_03.cpp
  // A successful attempt to modify caller arguments
  include <iostream>
  using std::cout;
  using std::endl;
  
  int incr10(int* num);                // Function prototype
  
  int main(void)
  {
     int num = 3;
     int* pnum = &num;                 // Pointer to num
  
     cout << endl
          << "Address passed = " << pnum;
  
     cout << endl
          << "incr10(pnum) = " << incr10(pnum);
  
     cout << endl
          << "num = " << num;
  
     cout << endl;
     return 0;
  }
  
  // Function to increment a variable by 10
  int incr10(int* num)                 // Function with pointer argument
  {
     cout << endl
          << "Address received = " << num;
  
     *num += 10;                       // Increment the caller argument
                                       //  - confidently
     return *num;                      // Return the incremented value
  }
  


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.