i run the below code and surprised to see the o/p .
take a look and let me know whats happenning there.
#define print(x) printf(#x"=%d\n",x)
int main(){
int a[10];
print(a);
print(*a);
print(*a+1);
print(*a+3);
print(*a+1-*a+3);
return 0;
}
Out Put:
[Zonnie@telnet CPz]$gcc funny.c
[Zonnie@telnet CPz]$ ./a.out
a=-1073745776
*a=1
*a+1=2
*a+3=4
*a+1-*a+3=4
regardless of whatever stores at a
shouldn't it produce -2.
whats the story ?