// CS 1621 Fall 2005 // Some interesting issues with the C++ for statement #include using namespace std; int wacky(int& i) { i++; cout << "Wacky i is " << i << endl; return i; } int wackier(int& i) { i += 2; cout << "Wackier i is " << i << endl; return i; } int main() { int i, low = 1, high = 10; for (i = low; i <= high; i++) { cout << "i is now " << i << endl; /* i--; */ // This is legal in C++ //high++; // Causes infinite loop } cout << endl << "i is now " << i << endl; for (i = wacky(i); i <= wackier(i); i++) { cout << "i is now " << i << endl; if (i > 40) break; // To prevent infinite loop } }