1. C Programming for Beginners: Writing Your First Hello World Program in C in 2023 2. Mastering Datatypes in C Programming: A Comprehensive Guide for Beginners in 2023 3. Complete Guide to % Format Specifiers in C for Beginners in 2023 4. A Comprehensive Guide to Operators in C Programming: Learn Everything About Operators in C in 2023 5. Master C Operator Precedence and Associativity in 2023: Definition, Examples, and Code 6. Learn Increment and Decrement Operators in C: A Beginners Guide with Examples - Codzify 7. Mastering Bitwise Operators in C: A Comprehensive Guide with Examples - Codzify 8. Ternary Operators in C Programming: A Beginners Guide (2023) 9. Switch Statements in C 2023: Complete Guide for Beginners 10. Learn Functions in C Programming - A Complete Tutorial for Beginners in 2023 11. Call by Value and Call by Reference in C Programming - A Complete Tutorial for Beginners in 2023 12. Storage Classes in C Programming: A Comprehensive Guide for 2023 13. Arrays in C Programming: A Comprehensive Guide for 2023 14. Basics of 2D Array in C Programming in 2023: Definition, Initialization, and Accessing Elements 15. Beginners Guide to Strings in C Programming with Codes and Examples 16. Strings Functions in C Language - strlen, strcpy,strcmp,strcat functions 17. A Comprehensive Guide to Structures in C Programming in 2023 18. Learn Unions in C Programming with Codes, Examples, and Explanations in 2023 19. Dynamic Memory Allocation in C: Understanding malloc, calloc, realloc, and free Functions 20. Introduction to C Programming 21. Hello world program in C 22. String functions in C - strncat, strcpy, strncpy, strchr, strrchr, strstr functions 23. Program for Fibonacci number in C - Codzify.com 24. What is palindrome number in C? 25. Write a C program to find a factorial of a given number 26. Write a C program to check whether a given number is prime or not 27. Write a C program to check whether a given number is an Armstrong number or not. 28. Write a C Program to transpose a matrix 29. C Programming Tutorial: Understanding Comments and Identifiers with Code Examples 30. Master String Handling Functions in C in 2023 - Codzify Topics

A Comprehensive Guide to Structures in C Programming in 2023

Article by: Manish Methani

Last Updated: November 1, 2021 at 2:04pm IST
6 min 0 sec read

Structures in C programming are used to define a new data type that can hold different data types. It is similar to an array but with more flexibility, as it can hold different data types. In this tutorial, we will cover the basics of structures, and how to create and use structures in C programming.

Creating a structure:

To create a structure in C programming, we use the struct keyword followed by the name of the structure. Here is an example:

struct student {
   char name[50];
   int roll_no;
   float marks;
};

In the above example, we have created a structure named student with three members: name, roll_no, and marks. The name member is an array of characters, roll_no is an integer, and marks is a floating-point number.

Using a structure:

Once we have created a structure, we can use it to create variables of that structure type. Here is an example:

struct student s1;

In the above example, we have created a variable s1 of type student. We can access the members of the structure using the dot (.) operator. Here is an example:

s1.roll_no = 10;

In the above example, we are assigning a value of 10 to the roll_no member of the s1 variable.

Accessing structure members:

We can access the members of a structure using the dot (.) operator. Here is an example:

struct student s1;
s1.roll_no = 10;

In the above example, we are accessing the roll_no member of the s1 variable using the dot (.) operator.

Passing a structure to a function:

We can pass a structure to a function in C programming. Here is an example:

void display(struct student s) {
   printf("Roll no: %d", s.roll_no);
   printf("Name: %s", s.name);
   printf("Marks: %f", s.marks);
}

In the above example, we have defined a function named display that takes a parameter of type student. Inside the function, we are accessing the members of the structure using the dot (.) operator.

Initializing a structure:

We can initialize a structure while declaring it. Here is an example:

struct student s1 = {"John Doe", 10, 75.5};

In the above example, we are initializing the members of the s1 variable while declaring it.

Passing a struct to a function is a common task in C programming. There are two ways to pass a struct to a function - by value and by reference. In this tutorial, we will cover both methods of passing a struct and provide code examples to demonstrate the concepts.

Passing a struct by value:

When a struct is passed by value, a copy of the entire struct is made and passed to the function. Any changes made to the struct within the function do not affect the original struct outside the function. Here is an example of passing a struct by value:

#include <stdio.h>
#include <string.h>

struct student {
    char name[50];
    int roll_no;
    float marks;
};

void display_student(struct student s) {
    printf("Name: %s", s.name);
    printf("Roll no: %d", s.roll_no);
    printf("Marks: %.2f", s.marks);
}

int main() {
    struct student s1 = {"John Doe", 10, 75.5};
    display_student(s1); // passing struct by value
    return 0;
}

In the above example, we define a struct named student with three members. We then define a function named display_student that takes a struct student as a parameter. We create a struct variable s1 and initialize it with some values. Finally, we call the display_student function and pass s1 as a parameter.

Passing a struct by reference:

When a struct is passed by reference, a pointer to the struct is passed to the function. Any changes made to the struct within the function affect the original struct outside the function. Here is an example of passing a struct by reference:

#include <stdio.h>
#include <string.h>

struct student {
    char name[50];
    int roll_no;
    float marks;
};

void display_student(struct student *s) {
    printf("Name: %s", s->name);
    printf("Roll no: %d", s->roll_no);
    printf("Marks: %.2f", s->marks);
}

int main() {
    struct student s1 = {"John Doe", 10, 75.5};
    display_student(&s1); // passing struct by reference
    return 0;
}

In the above example, we define a struct named student with three members. We then define a function named display_student that takes a pointer to a struct student as a parameter. We create a struct variable s1 and initialize it with some values. Finally, we call the display_student function and pass the address of s1 as a parameter.

Conclusion:

In this tutorial, we have covered the basics of structures in C programming. We have learned how to create a structure, how to use it, how to access its members, how to pass it to a function, and how to initialize it. Structures are a powerful feature of C programming, and they are widely used in real-world applications.

Learn Flutter, FlutterFlow,
Firebase & Angular.

Looking to learn how to create the production-ready apps
from scratch? Well, you are at the right place.

₹1299 or $15.56

Learn to create the Dating App using No-Code Tool FlutterFlow

Level: Advanced

Explore Curriculum
₹1299 or $15.56

Flutter Mobile App Development Course

Explore Curriculum
₹1299 or $15.56

The Complete Angular Course

Explore Curriculum
₹1299 or $15.56

Dart Programming for Absolute Beginners

Coming Soon
FREE

Next.js course

Start Watching
FREE

Fundamentals of Computer Programming Languages

Start Watching
FREE

Learn HTML, CSS & Bootstrap

Start Watching

Latest Web Stories

1

Learn how to open WhatsApp using FlutterFlow | Step by Step Guide

Test your skills with these expert-led curated
Mock Tests.

C Programming Test

Test your C Programming skills with this comprehensive mock test on C Programming.

Take Test

Flutter Test

Solve most asked Interview Questions on Flutter and Test your foundational skills in flutter.

Take Test

GATE(CSE) Operating Systems

Solve most asked GATE Questions in Operating Systems and test your Gate Score.

Take Test

HTML,CSS Test

This is a mock test designed to help you assess your knowledge and skills in HTML and CSS.

Take Test

(GATE CSE) Data Structures & Algorithms Test

Solve most asked GATE Questions in Data Structures and Algorithms and test your Gate Score.

Take Test

Download the Codzify
Mobile App


Learn Anytime, Anywhere at your own pace. Scan the QR Code with your Mobile Camera to Download the Codzify Mobile App.

Codzify Mobile App Codzify Mobile App
Codzify Logo

Terms and Conditions    Cookie Policy   Refund Policy   Adsense Disclaimer