1: //scope1.cpp
2: //Illustrates scopes and declarative regions.
4: #include <iostream>
5: using namespace std;
7: #include "utilities.h"
8: using Scobey::Pause;
10: int i = 1; //1 This i has global scope.
12: int main()
13: {
14: int i = 3; //2 This i is local to main.
16: cout << endl << i << endl;
17: Pause(0, "", 1);
18: {
19: cout << i << endl;
20: Pause(0, "", 2);
22: i = 5; //3 This i is not local to this block.
23: cout << i << endl;
24: Pause(0, "", 3);
26: int i = 7; //4 This i is local to this block.
27: cout << i << endl;
28: Pause(0, "", 4);
29: }
30: cout << i << endl;
31: Pause(0, "", 5);
32: }
34: /*
35: Questions:
36: 1. What values are output?
37: 2. What values are output if statement //1 is commented out?
38: 3. What values are output if statement //2 is commented out?
39: 4. What values are output if statement //3 is commented out?
40: 5. What values are output if statement //4 is commented out?
42: Answers:
43: 1. 3 3 5 7 5
44: 2. 3 3 5 7 5
45: 3. 1 1 5 7 5
46: 4. 3 3 3 7 3
47: 5. 3 3 5 5 5
48: */