Question: 4. Consider the following skeletal C program, and assume DYNAMIC scoping is used. 010 void funl(void); /* prototype * 020 void fun2(void); /* prototype *
4. Consider the following skeletal C program, and assume DYNAMIC scoping is used. 010 void funl(void); /* prototype * 020 void fun2(void); /* prototype * 030 void fun3(void); /* prototype */ 040 void main() { 050 int a, b, c; 060 // BODY OF MAIN 070 } 080 void funl(void) { 090 int b, c, d; 100 // BODY OF FUN1 110 } 120 void fun2(void) { 130 int c, d, e; 140 // BODY OF FUN2 150 } 160 void fun3(void) { 170 int d, e, f; 180 // BODY OF FUN3 190 } Assuming dynamic scoping and given the call sequences specified below, list all variables visible during the execution of the last function called, along with the line numbers where they are declared. a) main > funl > fun2 > fun3 b) main > fun! > fun3 c) main > fun2 > fun3 > fun! d) main > fun3 > fun! e) main > fun! > fun3 > fun2 f) main > fun3 > fun2> fun
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
