Previous | Home | Next |
In structure we can access multiple data types under a single name for easy manipulation. example we want to refer to address with multiple data like house number, street, zip code, country. C is support structure which allows that we want to wrap one or more variables with different data types. A structure can contain any valid data types like int, char, float even arrays and other structures. Each variable in structure is called a structure member.
Example
unsigned int house_number;
char street_name[50];
int zip_code;
char country[50];
};
A structure can contain pointers as structure members and we can create a pointer to a structure as follows:
struct invoice { char* code; char date[12]; }; struct address billing_addr; struct address *pa = &billing_addr;
Example of pointer to structure
#include <stdio.h> #include <string.h> struct man{ /* the structure type */ char lastname[20]; /* last name */ char firstname[20]; /* first name */ int age; /* age */ float rate; /* e.g. 12.75 per hour */ }; struct man my_struct; /* define the structure */ void show_name(struct man *p); /* function prototype */ int main(void) { struct man *st_ptr; /* a pointer to a structure */ st_ptr = &my_struct; /* point the pointer to my_struct */ strcpy(my_struct.lastname,"tiger"); strcpy(my_struct.firstname,"rakesh"); printf("%s ",my_struct.firstname); printf("%s",my_struct.lastname); my_struct.age = 30; show_name(st_ptr); /* pass the pointer */ return 0; } void show_name(struct man *p) { printf("%s ", p->firstname); /* p points to a structure */ printf("%s ", p->lastname); printf("%d", p->age); };
Output: rakesh tigerrakesh tiger 30
Previous | Home | Next |