p1 ++ приводит к появлению инструкций на ассемблере, которые увеличивают p1 на размер, на который он указывает.Таким образом, вы получаете
(char *)p1 = (char *)p1 + sizeof (object pointed to by p1)
(когда на этот вопрос был дан ответ) Обычно int равен 4 байта, поэтому он будет увеличиваться на 4, но это зависит от sizeof () на вашем компьютере..
Он не переходит к «следующему целому».
Пример: предположим, что 4-байтовый адрес и p1 = 0x20424 (где p1 - int *),Тогда
p1++
установит новое значение p1 в 0x20428.НЕ 0x20425.