C++ - Пусть имеется система в которой int занимает 4 байта, а char занимает 1 байт. Будет ли отличаться (i2 - i1) от (c2 - c1) в фрагменте кода ниже. | ProgHub
Пусть имеется система в которой int занимает 4 байта, а char занимает 1 байт. Будет ли отличаться (i2 - i1) от (c2 - c1) в фрагменте кода ниже.
int a[10]; 
int* i1 = &a[4]; 
int* i2 = &a[6]; 
char* c1 = (char*)i1; 
char* c2 = (char*)i2;
Нет, не будет.
Вычитание адресов не имеет смысла.
(i2 - i1) больше (c2 - c1) на 4
(i2 - i1) меньше (с2 - с1) на 6