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.

Explore Tech Guide:

Codzify Logo

Terms and Conditions    Cookie Policy   Refund Policy   Adsense Disclaimer

Contact: teamcodzify@gmail.com