summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2014-07-21 21:20:02 -0600
committermo khan <mo@mokhan.ca>2014-07-21 21:20:02 -0600
commit95a7722e90a2ffd5a29a9644661f8a87dc09156c (patch)
tree0b277a7ce74b02b0393ac53d03c40b1ce6206947
parent411531b4e0aecef43822c492589f2c9b8c890a47 (diff)
add example with global variable.
-rw-r--r--scope2.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/scope2.c b/scope2.c
new file mode 100644
index 0000000..30229c1
--- /dev/null
+++ b/scope2.c
@@ -0,0 +1,36 @@
+#include <stdio.h>
+
+int j = 42;
+
+void func3()
+{
+ int i = 11, j = 999;
+ printf("\t\t\t[in func3] i = %d, j = %d\n", i, j);
+}
+
+void func2()
+{
+ int i = 7;
+ printf("\t\t[in func2] i = %d, j = %d\n", i, j);
+ printf("\t\t[in func2] setting j = 1337\n");
+ j = 1337;
+ func3();
+ printf("\t\t[back in func2] i = %d, j = %d\n", i, j);
+}
+
+void func1()
+{
+ int i = 5;
+ printf("\t[in func1] i = %d, j = %d\n", i, j);
+ func2();
+ printf("\t[back in func1] i = %d, j = %d\n", i, j);
+}
+
+int main(int argc, const char *argv[])
+{
+ int i = 3;
+ printf("[in main] i = %d, j = %d\n", i, j);
+ func1();
+ printf("[back in main] i = %d, j = %d\n", i, j);
+ return 0;
+}