Find the output of the following program.
void main()
{
int array[10];
int *i = &array[2], *j = &array[5];
int diff = j-i;
printf("%d", diff);
}
void main()
{
int array[10];
int *i = &array[2], *j = &array[5];
int diff = j-i;
printf("%d", diff);
}
A. 3
B. 6
C. Garbage value
D. Error
Answer: Option A
Solution (By Examveda Team)
When subtracting pointers you get the number of elements between those addresses, not the number of bytes.
Join The Discussion