1: // Filename: PTR_EX3.CPP 2: // Purpose: Illustrates the connection between pointers and arrays. 4: #include <iostream> 5: using namespace std; 7: int main() 8: { 9: cout << "\nThis program illustrates pointers with arrays." 10: << "\nStudy the source code and the output simultaneously.\n\n"; 12: int count[5] = { 2, 5, 9, 12, 20 }; 13: double real[4] = { -1.2, 3.5, 6.3, 9.1 }; 16: int* iPtr; 17: iPtr = count; // Equivalent to: iPtr = &count[0]; 18: cout << endl; 19: for (int i = 0; i < 5; i++) 20: { 21: cout << *iPtr << " "; 22: iPtr++; 23: } 24: cout << endl; 27: // Initialize dPtr to point at last array element: 28: double* dPtr = &real[3]; 30: // Print out array values in reverse order: 31: for (int j = 3; j >= 0; j--) 32: { 33: cout << *dPtr << " "; 34: dPtr--; 35: } 36: cout << endl; 38: // Illustrate some additional "pointer arithmetic": 39: iPtr = &count[2]; 40: cout << *(iPtr + 2) << endl; 41: cout << *(iPtr - 1) << endl; 42: iPtr -= 2; 43: cout << *iPtr << endl; 45: return 0; 46: }