С вопросом с указателями

У меня есть программный вопрос, вот код.

int main()
{
int *p,*q;
p=(int*)1000;
printf("%d ",p);
q=(int*)2000;
printf("%d",q);
printf("%d",(p-q));
return 0;
}

Но ответ приходит как

1000 
2000 
-250

Я не могу понять, что происходит сp-q и почему ответ пришел как-250?

Ответы на вопрос(4)

Ваш ответ на вопрос