Please send questions to
st10@humboldt.edu .
#include <iostream>
using namespace std;
/*-----------------------------------------------------
Contract: main : void -> int
Purpose: play with pointers!!
Examples: not really applicable --- run and study/consider
results.
by: Sharon M. Tuttle
last modified: 11-10-03
--------------------------------------------------------*/
int main()
{
float *numPtr, *valPtr;
float myFloat;
/*--- BASELINE -----------------------------------*/
myFloat = 6.67;
cout << "POINT 1: myFloat is: " << myFloat << endl;
/*--- first pointer example ----------------------*/
numPtr = &myFloat;
/* what happens when I change the value pointed to */
/* by a pointer? */
*numPtr = 22;
cout << "POINT 2: myFloat is: " << myFloat << endl;
/*--- two pointers pointing to the same address ----*/
valPtr = numPtr;
*numPtr = 33.3;
cout << "POINT 3: myFloat is: " << myFloat << endl;
cout << " and *valPtr is: " << *valPtr << endl;
cout << " and *numPtr is: " << *numPtr << endl;
/*--- use of new ---------------------------------*/
valPtr = new float;
*valPtr = 0.44;
*numPtr = *valPtr;
*valPtr = 0.88;
cout << "POINT 4: *valPtr is: " << *valPtr << endl;
cout << " and *numPtr is: " << *numPtr << endl;
// just to play it safe...? (and demo delete?)
delete valPtr; // deallocate the memory that
// valPtr points to
valPtr = NULL;
return 0;
}