c programming

Declaration of Structure

What is Structure

Structure एक Composite Data Type है, जो विभिन्न प्रकार के Multiple Variable को एक Entity में Combine करता है। Structure के प्रत्येक Variable को Member या Field कहा जाता है। ये Member किसी भी Data Type के हो सकते हैं, जिनमें int, Char, Float, Array, Pointer तथा अन्य Structure भी शामिल हैं। Structure आपको Specific Requirementsके अनुरूप User-Defined Data Type बनाने की Permission देती है, जो Complex Data को Manage करने के लिए एक Clean और Organized Approach Provide करती है।

How to Create a Structure

Structure बनाने के लिए ‘struct’ Keyword का use किया जाता है।

Example


struct address
{
char name[50];
char street[100];
char city[50];
char state[20];
int pin;
};

Declaration of Structures

C Programming में किसी Structure का use करने के लिए पहले इसे Declare करना होगा। किसी Structure को Declare करने का Syntax इस प्रकार है-

Syntax


struct structure_name {
data_type member1;
data_type member2;
// add more members as needed
};

Explanation

  • struct: यह C में एक Keyword है, जो Structure Declaration के Starting Point को Indicate करता है।
  • structure_name: यह New Data Type के लिए Identifier है। इसे Naming Convention का पालन करना चाहिए| और यह एक Keyword या Existing Identifier नहीं हो सकता है।
  • {}: Open और Close होने वाले Curly Brace Structure के Member को Enclose करता हैं।
  • data_type: Structure के प्रत्येक Member के पास एक Specific Data Type होना चाहिए| जैसे कि Int, Float, Char, या कोई अन्य Structure।

How to Initialize Structure Members

Structure Members को Declaration के साथ Initialized नहीं किया जा सकता है।

Example


struct Point
{
int x = 0; // COMPILER ERROR: cannot initialize members here
int y = 0; // COMPILER ERROR: cannot initialize members here
};

उपरोक्त Error का Reason Simple है, जब Datatype Declare किया जाता है, तो इसके लिए कोई Memory Allocate नहीं की जाती है। Memory तभी Allocate की जाती है, जब Variable बनाए जाते हैं। Structure के Member को Curly Braces ‘{}’ का use करके Start (Initalize) किया जा सकता है।

Example


struct Point
{
int x, y;
};

int main()
{
// A valid initialization. member x gets value 0 and y
// gets value 1. The order of declaration is followed.
struct Point p1 = {0, 1};
}

How to Access Structure Elements

Structure Members को dot (.) Operator का use करके Access किया जाता है।

Example


#include <stdio.h>

struct Point {
int x, y;
};

int main()
{
struct Point p1 = { 0, 1 };

// Accessing members of point p1
p1.x = 20;
printf(“x = %d, y = %d”, p1.x, p1.y);

return 0;
}

Output


x = 20, y = 1

What is an Array of Structures

यह User-Defined Data Structure के कई Instances का एक Collection है, जहां प्रत्येक Instance विभिन्न Related Field वाले एक Record या Entity को Represent करता है। Structure Developers को Logically रूप से Related Data को एक Entity में Group में करने की Permission देता है, और Array Aspect ऐसी कई Entities को Contiguous Memory Location में Store करने में सक्षम बनाता है।

Defining an Array of Structures

C Programming में Structure के एक Array को Define करने के लिए सबसे पहले User-Defined Structure (जिसे Structure के रूप में भी जाना जाता है) बनाने की आवश्यकता है, जो Data Record को Represent करती है। किसी Structure को Define करने का Syntax इस प्रकार है-

Syntax


struct structure_name {
data_type field1;
data_type field2;
// Add more fields as needed
};

एक बार Structure Define हो जाने पर उस Structure Type की एक Array Declare कर सकते हैं-

Syntax


struct structure_name array_name[array_size];

Example


#include <stdio.h>

struct Point {
int x, y;
};

int main()
{
// Create an array of structures
struct Point arr[10];

// Access array members
arr[0].x = 10;
arr[0].y = 20;

printf(“%d %d”, arr[0].x, arr[0].y);
return 0;
}

Output


10 20

What is a Structure Pointer

Strucute Pointer एक Pointer होता है, जो Structure Variable के Memory Address को Indicate करता है। यह Structure के Efficient Handling और Manipulation को सक्षम बनाता है| Structure Pointer Developers को उनके Variable Name तक Direct Access करने के बजाय उनके Memory Location को Refer करके Structure के साथ काम करने की Permission देते हैं।

Syntax


struct MyStruct {
// Define variables here
};

struct MyStruct *ptr; // Declaration of a structure pointer

Example


#include <stdio.h>

struct Point {
int x, y;
};

int main()
{
struct Point p1 = { 1, 2 };

// p2 is a pointer to structure p1
struct Point* p2 = &p1;

// Accessing structure members using structure pointer
printf(“%d %d”, p2->x, p2->y);
return 0;
}

Output


1 2

Tags: No tags

Add a Comment

Your email address will not be published. Required fields are marked *