nthesis. In the answer box arr[] = {1,9,7,8}; * intPtr = arr; :« &intPtr « endl; E« (arr[0] + 1) « enc :« (arr[arr[0] + 2]) « E « * intPtr « endl; intPtr;
Since *intPtr is pointer variable that holds arr address of start index 0
&intPtr means address of pointer variable where this is stored or located into the memory which is given 0xB11
so that cout statement print the same 0xB11
In next cout statement arr[0] has value of array at index 0 which is 1 and increment its value by 1 so that print
1+1 =2
In third cout statement executed index arr[0] +2 first that gets 1+2 =3 then arr[3] computed and print as 8
In fourth cout statement *intPtr means that value of pointer variable intPtr is the value at start index of array by default that prints 1
In next statement increment pointer position by 1 ,so that it points to index position 1 of array arr[1];
Now the last given cout statement intPtr[0] points to arr[1] and prints their value 9.
Step by step
Solved in 2 steps