/**************************************************************/ // R. A. Hillyard // pointer00.cpp // November 2001 // // Program to demonstrate the basic use of pointers /**************************************************************/ #include<iostream> #include<iomanip> #include<cstddef> //for definition of NULL using namespace std; int main() { int a = 7; //declare an int - set value to 7 int b = 0; //declare an int - set to 0; int *ptr = NULL; //declare an int pointer set to NULL //show the initial value and address of each variable. cout << "\nInitial values a: " << a << " b: "<< b; cout << " ptr: " << ptr << endl; cout << "\nInitial address a: " << &a << " b: "<< &b; cout << " ptr: "<< &ptr << endl; ptr = &a; //set ptr to the address of a b = *ptr; //b gets the value of the location pointed to by ptr cout << "\nFinal values a: " << a << " b: "<< b; cout << " ptr: " << ptr << endl; cout << "\nFinal address a: " << &a << " b: "<< &b; cout << " ptr: "<< &ptr << endl; cout << "\nThe value of memory location " << ptr << " is " << *ptr << endl; cout << "\na is " << a << " b is " << b << endl; cout << "\nagain a is " << *(&a) << endl << endl; } /*********************Program Output************************** Initial values a: 7 b: 0 ptr: 0x00000000 Initial address a: 0x0012ff90 b: 0x0012ff94 ptr: 0x0012ff98 Final values a: 7 b: 7 ptr: 0x0012ff90 Final address a: 0x0012ff90 b: 0x0012ff94 ptr: 0x0012ff98 The value of memory location 0x0012ff90 is 7 a is 7 b is 7 again a is 7 /**************************************************************/