Need help with a C++ assignment? Get affordable C++ homework help.

Pointers code snippet

Summary

Source code of C++ program, showing basic operations on pointers, such as referencing, dereferencing, etc.

Source code

C++: pointers.cpp

#include <iostream>

 

using namespace std;

 

int main() {

      // int variable

      int intVar = 777;

      cout << "intVar: " << intVar << endl;

 

      // pointer to int

      int *pIntVar;    

 

      // make pIntVar pointing to intVar

      // using "reference operator"

      pIntVar = &intVar;

      cout << "pIntVar: " << pIntVar << endl;

 

      // to access a value stored in

      // the intVar using pointer pIntVar

      // use "dereference operator"

      cout << "*pIntVar: " << *pIntVar << endl << endl;   

 

      // if intVar changes, *pIntVar changes too

      // and vice versa

      intVar = 123;

      cout << "intVar: " << intVar << endl;

      cout << "*pIntVar: " << *pIntVar << endl;

      *pIntVar = 321;

      cout << "intVar: " << intVar << endl;

      cout << "*pIntVar: " << *pIntVar << endl << endl;

 

      // pointer is a variable

      // so it's possible to declare one more pointer

      // and make an assignment

      int *anotherPointer;

      anotherPointer = pIntVar;

     

      // now, changing *anotherPointer leads

      // to altering intVar too

      *anotherPointer = 0;

      cout << "intVar: " << intVar << endl;

      cout << "*pIntVar: " << *pIntVar << endl;

      cout << "*anotherPointer: " << *anotherPointer << endl << endl;

 

      // one can also declare a pointer to pointer

      int **pointerToPointer;

      pointerToPointer = &pIntVar;

      cout << "pIntVar: " << pIntVar << endl;

      cout << "*pIntVar: " << *pIntVar << endl;

      cout << "pointerToPointer: " << pointerToPointer << endl;

      cout << "*pointerToPointer: " << *pointerToPointer << endl;

      cout << "**pointerToPointer: " << **pointerToPointer << endl;

 

      return 0;

}

 

Sample run

C/C++

intVar: 777
pIntVar: 0x22ff74
*pIntVar: 777
 
intVar: 123
*pIntVar: 123
intVar: 321
*pIntVar: 321
 
intVar: 0
*pIntVar: 0
*anotherPointer: 0
 
pIntVar: 0x22ff74
*pIntVar: 0
pointerToPointer: 0x22ff70
*pointerToPointer: 0x22ff74
**pointerToPointer: 0
 

Partners Ads

hp coupon code