Question: I'm trying to understand a piece of code shown below. I'm having problems with understanding what "array +7" or "array,+3" means. Does it increment the first number in the array by 7/3?

```
int array[8] = {1,2,4,8,16,32,64,128}; 
int *ptr_array[4];
int *dyn_array = malloc(sizof(int)*8);

ptr_array[0] = array;
ptr_array[1] = array +7;
ptr_array[2] = array +3;
ptr_array[3] = dyn_array;

```

Answer: 
`array + 7` is a pointer to the eight element of the array, it's equal to `&array[7]`, because `x[y]` is defined as `*(x + y)`.
`array + 7` means the address of the 8th position of the array. In here array hold the base address. So you can access the 8th element of that array by `*(array+7)` or `array[7]`.