Wednesday, January 22, 2014

Pointer to Structure

1.      
          main()
         {
               struct s1
                 {   
                      char *z;
                      int i;
                      struct s1 * p;
                  };
    
               struct s1 a[] = {    {"NAGPUR" , 1 , a+1 } ,
                                              {"RAIPUR"   , 2 , a+2 } ,
                                              {"KANPUR"  , 3 , a     }  
                                          };
               struct s1 * ptr = a ;
             1.  printf (" %s %s %s " , a[0].z ,  ptr->z , a[2].p->z  ) ;
        
             2.  printf (" %s ", ++ptr->z) ;
             3.  printf ( "%s " ,  a[( ++ptr ) -> i ].z )  ;
              4. printf ("% s" , a[--( ptr->p->i ).z ] ) ;
        }        

     OUTPUT IS : 1. NAGPUR NAGPUR NAGPUR
                                    
                                2. AGPUR 

                                3. KANPUR
                                 
                                4. KANPUR

   OBSERVATIONS : ptr->z has higher precedence than ++ptr 

No comments:

Post a Comment