Skip to content
EMPS intranet

Back to top

Note

  • This code has been compiled to show the internal calculations of the addresses of array elements like this: 824.
Hi!   Hi!           Start main()

Try stepping through the code


  Value and type of last evaluated expression: Address of array element: Address of array elementx:  (none)

Your browser does not support the canvas element which will make some the features unavailable.

If you are using Internet Explorer within the University of Exeter try going to the Settings menu (probably the gear shape at the top right of this page), selecting "Compatibility View settings", unchecking "Display intranet sites in Compatibility View" and reloading this page.

Code

 Header...
// // Error passing an array to a function // #define N 4 void printarray (int output[N]);
int main(){
  ...
» int num[N]={1,2,3,4}; » printarray(numN);// !!! » return 0;
} void printarray(int output[N]){
  ...
» int i; » for (i=0; i<N; ++i) { » printf("%d\n", outputi); }
} // This program failed to complete properly // See if you can work out why by // stepping throught the code.
Memory

printarray()

132
133
134
135
i = 134515630
168
169
170
171
output = -4288116055

main()

184
185
186
187
188
189
190
191
num[0] = 1
num[1] = 2
192
193
194
195
196
197
198
199
num[2] = 3
num[3] = 4

NB: the actual memory address of each variable is the
address shown plus 4288116056 (0xFF977558).

Show Advanced options

.
                                                                                                                                                                                                                                                                       

Validate   Link-check © Copyright & disclaimer Share
Back to top