Reallocation of the dynamic memory

In the video, the instructor said that we can do the following:
int *a = new int[10];
Then we can reallocate the memory by doing something like
a = new char[30];
But won’t it end up changing the type such that when earlier:
a+1 would have been array[1]; for the integer array
But given that in the next case it point to a char then won’t it point to array[5] or something as int is 4bytes and it will skip 4bytes?

@varun.saxena this is an unvalid reallocation as a is already declared as pointer referencing for integer values, hence it cannot be used to reallocate to char type!

I hope I’ve cleared your doubt. I ask you to please rate your experience here
Your feedback is very important. It helps us improve our platform and hence provide you
the learning experience you deserve.

On the off chance, you still have some questions or not find the answers satisfactory, you may reopen
the doubt.