int main()
           {
             int a[]={2,3,4,5,6};
             int j;
             for(j=0;j<5;j++)
               {
                    printf("%d\n",*a);
                      a++; 
               }
            return;
         }
gives Lvalue required error but
        int main()
        {
           int a[]={2,3,4,5,6};
           int *p,j;
            p=a;
          for(j=0;j<5;j++)
            {
              printf("%d\n",*p);
               p++; 
            }
          return;
        }
doesn't. why???? So I dont understant that even though in a[], a is treated as a pointer so why cant we increment it just like a pointer
 
     
    