I am trying to understand how pointers work and I am stuck on this block of code. Can someone explain where does the expression '*(a+tally)' point to in this block of code? What is the logic behind it?
#include <stdio.h>
int main()
{
int a[5]={1,2,3,4,5},b[5]={10,20,30,40,50},tally;
for(tally=0;tally< 5;++tally)
{
*(a+tally)= *(tally+a) + *(b+tally);
}
for(tally=0;tally< 5;tally++)
{
printf("%d" *(a+tally));
}
return 0;
}