Prepare Interview

Mock Exams

Make Homepage

Bookmark this page

Subscribe Email Address

Language%20in%20C%20Interview%20Questions%20and%20Answers

Question: Suppose I have a structure having fields name, age, salary and have passed address of age to a function fun( ). How I can access the other member of the structure using the address of age?
Answer: struct emp
{
char name[20] ;
int age ;
float salary ;
} ;
main( )
{
struct emp e ;
printf ( "nEnter name: " ) ;
scanf ( "%s", e.name ) ;
printf ( "nEnter age: " ) ;
scanf ( "%d", &e.age ) ;
printf ( "nEnter salary: " ) ;
scanf ( "%f", &e.salary ) ;
fun ( &e.age ) ;
}
fun ( int *p )
{
struct emp *q ;
int offset ;
offset = ( char * ) ( & ( ( struct emp * ) 0 ) -> age ) - ( char * ) ( (
struct emp* ) 0 ) ;
q = ( struct emp * ) ( ( char * ) p - offset ) ;
printf ( "nname: %s", q -> name ) ;
printf ( "nage: %d", q -> age ) ;
printf ( "nsalary: %f", q -> salary ) ;
}
Is it helpful? Yes No

Most helpful rated by users:

©2024 WithoutBook