Determine Output:
#include<stdio.h>
void main()
{
int *ptr, a=10;
ptr = &a;
*ptr += 1;
printf("%d, %d", *ptr, a);
}
#include<stdio.h>
void main()
{
int *ptr, a=10;
ptr = &a;
*ptr += 1;
printf("%d, %d", *ptr, a);
}
A. 10, 10
B. 10, 11
C. 11, 10
D. 11, 11
Answer: Option D
Solution (By Examveda Team)
Address of variable a is assigned to the integer pointer ptr.
Due to the statement;
*ptr += 1;
value at address pointing by ptr incremented by 1.
As the value at address is changed so variable a also get the updated value.
Thanks a lot for the explanation.