Question

1. For each variable (a-g) describe whether the variable itself is global or local, static or not static, and initialized or
Consider following program. Note that execution begins at main. (Dont worry about what the program actually does. You willproblem 2 and 3

0 0
Add a comment Improve this question Transcribed image text
Answer #1

2. Following are the places where the memory will be allocated.

  1. a: It is a pointer and thus it is in statically allocated RAM.
  2. b: It is a pointer and thus it is in statically allocated RAM.
  3. c: It is a global variable, thus it is in statically allocated RAM.
  4. d: It is a static variable, thus it is in statically allocated RAM.
  5. e: It is the variable which is sent from the functionA thus it will be in the stack.
  6. f: it is present on the stack of the main function.
  7. g: It is present on the stack of the doFunctionA()

3. Heap: 500 integers: 500*4 = 2000bytes
RAM: it will have the static variable which is defined as an integer: 4bytes
Stack: 8 bytes, one integer and one pointer of 4 bytes each which are sent as the function parameters.

Friend, If you have any doubts in understanding do let me know in the comment section. I will be happy to help you further.
Thanks

Add a comment
Know the answer?
Add Answer to:
problem 2 and 3 1. For each variable (a-g) describe whether the variable itself is global...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • In the following C program, indicate the variable type (global, local, or static local), the lifetime...

    In the following C program, indicate the variable type (global, local, or static local), the lifetime (when the program is run or when the function is called), and the memory allocation (from stack or from heap) for each variable (x, y, z, and w) defined in the program. int w; void fun (int x) { int y; static float z; ... } void main() { fun(w); }

  • Write the code to dynamically allocate ONE integer variable using calloc (contiguous allocation) or malloc (memory...

    Write the code to dynamically allocate ONE integer variable using calloc (contiguous allocation) or malloc (memory allocation) and have it pointed to by a pointer (of type int * ) named ptr_1. Use ptr_1 to assign the number 7 to that dynamically allocated integer, and in another line use printf to output the contents of that dynamically allocated integer variable. Write the code to dynamically allocate an integer array of length 5 using calloc or malloc and have it pointed...

  • Computer memory is typically organized in a hierarchy with different types of memory providing different size,...

    Computer memory is typically organized in a hierarchy with different types of memory providing different size, speed, cost, and volatility trade-offs. Which of the following statements are true: Registers are the fastest memory accessible by machine instructions. Random Access Memory (RAM) is typically divided into regions (segments) dedicated to specific uses by executing programs. Instructions are fetched from Code segments. Temporary values used to support algorithm recursion are stored in Stack Segments. in computer programming, a static variable is a...

  • In Exercise 1, displayAnimal uses an Animal reference variable as its parameter. Change your code to...

    In Exercise 1, displayAnimal uses an Animal reference variable as its parameter. Change your code to make the displayAnimal function anim parameter as an object variable, not a reference variable. Run the code and examine the output. What has changed? Polymorphic behavior is not possible when an object is passed by value. Even though printClassName is declared virtual, static binding still takes place because anim is not a reference variable or a pointer. Alternatively we could have used an Animal...

  • Using C programming

    Using C, create a data file with the first number being an integer. The value of that integer will be the number of further integers which follow it in the file. Write the code to read the first number into the integer variable how_many.Please help me with the file :((This comes from this question:Write the code to dynamically allocate ONE integer variable using calloc (contiguous allocation) or malloc (memory allocation) and have it pointed to by a pointer (of type int...

  • Consider the following pseudocode. int a = 9; //global variable void go {a = a +2;...

    Consider the following pseudocode. int a = 9; //global variable void go {a = a +2; print a; } main { int a = 4; 80: a = a +1; print a; } a. What is printed out if we are using static scope rules? Show runtime stack. b. What is printed out if we are using dynamic scope rules? Show calling tree.

  • Question 11 pts Fill in the blank. Two functions are defined main.c and MyAge.c   // FILE...

    Question 11 pts Fill in the blank. Two functions are defined main.c and MyAge.c   // FILE main.c main ( ) { _______ int age ; printf ( " the value of age is %d \n", age ) ; } // FILE MyAge.c int age = 10; int MyAge ( ) { } Group of answer choices static external internal extern Flag this Question Question 21 pts Fill in the blank. Two functions are defined main.c and MyAge.c   The below program...

  • Objective: In this assignment you will do the following: (1) manipulate pointers, (2) allocate me...

    Objective: In this assignment you will do the following: (1) manipulate pointers, (2) allocate memory dynamically, (3) implement a default constructor, copy constructor and destructor, (4) use only one pointer to add to the back and to dequeue from the front of the queue. Assignment Description: You will implement a doubly-linked circular queue of integers. Consider the following class declarations when implementing BQUEUE. As always, you must comment your declaration and implementation files, "BQUEUE.h" and "BQUEUE.cpp", respectively. class bqnode {...

  • 17. Given the following definition of function £, what does the expression "t (1: 2: 3]::" return? let rec f listl match listl with 1 I head::rest -> head f resti b. 6 c. 120 d. 123 456...

    17. Given the following definition of function £, what does the expression "t (1: 2: 3]::" return? let rec f listl match listl with 1 I head::rest -> head f resti b. 6 c. 120 d. 123 456 e. g. 14; 5; 6] h. (6; 5; 4] i. Error message j. None of the above 18. Which of the following is the correct meaning of the C declaration "double (*a [n]) "? a is an array of n pointers to...

  • Call stack question! Long one... The call stack is part of main memory that is reserved...

    Call stack question! Long one... The call stack is part of main memory that is reserved for function calling. Like all r memory it is finite, so can be exhausted resulting in a stack overflow. Recursive functions allocate space on the stack for each recursive call: if there are many such recursive calls a stack overflow can result. The questions that follow ask you to investigate recursive functions and stack overflows. Note that when running programs in the Linux terminal...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT