A struct is a complex data type declaration that
defines a physically grouped list of variables to be placed under one name in a
block of memory.
#include <stdio.h>
#include <string.h>
struct Books {
char title[50];
char author[50];
char subject[100];
int book_id; };
int main( ) {
struct Books Book1;
strcpy( Book1.title, "C Programming");
strcpy( Book1.author, "Nuha Ali");
strcpy( Book1.subject, "C Programming
Tutorial");
Book1.book_id = 6495407;
strcpy( Book2.title, "Telecom Billing");
strcpy( Book2.author, "Zara Ali");
strcpy( Book2.subject, "Telecom Billing
Tutorial");
Book2.book_id = 6495700;
printf( "Book 1 title : %s\n",
Book1.title);
printf( "Book 1 author : %s\n",
Book1.author);
printf( "Book 1 subject : %s\n",
Book1.subject);
printf( "Book 1 book_id : %d\n\n",
Book1.book_id);
printf( "Book 2 title : %s\n",
Book2.title);
printf( "Book 2 author : %s\n",
Book2.author);
printf( "Book 2 subject : %s\n",
Book2.subject);
printf( "Book 2 book_id : %d\n",
Book2.book_id);
return 0;
}
Structures as Function Arguments:
#include <stdio.h>
#include <string.h>
struct Books {
char title[50];
char author[50];
char subject[100];
int book_id;
};
void printBook( struct Books book );
int main( ) {
struct Books Book1;
struct Books Book2;
strcpy( Book1.title, "C Programming");
strcpy( Book1.author, "Nuha Ali");
strcpy( Book1.subject, "C Programming
Tutorial");
Book1.book_id = 6495407;
strcpy( Book2.title, "Telecom Billing");
strcpy( Book2.author, "Zara Ali");
strcpy( Book2.subject, "Telecom Billing
Tutorial");
Book2.book_id = 6495700;
printBook( Book1 );
printf( "\n");
printBook( Book2 );
return 0;
}
void printBook( struct Books book ) {
printf( "Book title : %s\n", book.title);
printf( "Book author : %s\n",
book.author);
printf( "Book subject : %s\n",
book.subject);
printf( "Book book_id : %d\n",
book.book_id);
}
Structures as Pointers:
#include <stdio.h>
#include <string.h>
struct Books {
char title[50];
char author[50];
char subject[100];
int book_id;
};
void printBook( struct Books *book );
int main( ) {
struct Books Book1;
struct Books Book2;
strcpy( Book1.title, "C Programming");
strcpy( Book1.author, "Nuha Ali");
strcpy( Book1.subject, "C Programming
Tutorial");
Book1.book_id = 6495407;
strcpy( Book2.title, "Telecom Billing");
strcpy( Book2.author, "Zara Ali");
strcpy( Book2.subject, "Telecom Billing
Tutorial");
Book2.book_id = 6495700;
printBook( &Book1 );
printf("\n");
printBook( &Book2 );
return 0;
}
void printBook( struct Books *book ) {
printf( "Book title : %s\n", book->title);
printf( "Book author : %s\n",
book->author);
printf( "Book subject : %s\n",
book->subject);
printf( "Book book_id : %d\n",
book->book_id);
}