Structure & Union in hindi in c language स्ट्रक्चर तथा यूनियन c कंप्यूटर भाषा में क्या होता है हिंदी में
जब किसी Structure को function arguments मे pass किया जाता है tab तीन प्रकार से Structure को function arguments से use कर सकते है |
1. In first method,Structure के सभी members को calling function के actual parameters मे pass किया जाता है |उसके बाद ये member individual variable की तरह कार्य करता है लेकिन ये method उस case मे inefficient है जब Structure मे members की सख्या बहुत ज्यादा होती है |
2.इस method मे, पुरे Structure को function arguments मे pass किया जता है |जब एसे function को calling होती है तब पूरी Structure calling function मे copy हो जाता है |और function के द्वारा किये गये changes का actual Structure variable पर कोई effect नहीं पड़ता है |इसलिए function मे return statement होना चाहिए |
3.इस method मे, भी पुरे Structure को function arguments मे pass किया जता है लेकिन pointer के concept से |इसलिए इसमें Structure के address को pass किया जाता है |calling function मे हुए change का effect Structure variable पर जरुर पड़ता है |इस method को Pointer and function मे detail मे पड़ेगे|इस article मे method 2 को हम detail मे पड़ेगे |
इसके rules होते है :-
1.called function का type declare होना चाहिए |Structure के लिए struct Structure_name को use किया जाता है |
2. called function मे Structure को actual parameter की तरह pass करते है तब function definition मे , formal parameter मे Structure variable declare होगा |
3.return statement तभी होगा जब function कोई data या Structure को return करता है|
4.अगर Structure कोई Structure return करता है tab main() function मे ,return statement , Structure variable मे return Structure को assign करता है |
उदहारण के लिए :
#include<stdio.h>
#include<conio.h>
struct detail
{
char name[15];
int age;
char city[15];
int salary;
};
struct input (); //Function Declaration
void output (struct detail ); //Function Declaration
void main()
{
struct detail out_candidate;
out_candidate=input ();
output ( out_candidate );
getch();
}
struct input ()
{
struct detail candidate1;
printf(“Enter name “);
gets(candidate1.name);
printf(“Enter age”);
scanf(“%d”,&candidate1.age);
ptrintf(“Enter City “);
gets(candidate1.city);
printf(“Enter salary”);
scanf(“%d”,&candidate1,salary);
return(candidate1);
}
void output ( struct detail can1)
{
printf(“Details”)
printf(“Name : %s”,can1.name);
printf(“Age=%d”,can1.age);
printf(“City=%s”,can1.city);
printf(“Salary=%d”,can1.salary);
}
इस उदहारण मे void output ( struct detail can1) एक function है जिसमे structure argument की तरह pass हो रहा है लेकिन कोई value return नहीं हो रही है |
और
input () एक function है जिसमे कोई structure argument की तरह pass नहीं हो रहा है लेकिन एक structure return हो रहा है |
Size of Structure :
Size of Structure का मतलब है bytes की सख्या जिन्हें कोई Structure memory मे occupy करता है |Structure की size अलग अलग कंप्यूटर के लिए अलग अलग जोती है |अतः Structure की size को sizeof() operator से calculate किया जाता है |इसका syntax है :-
sizeof(Structure variable_name );
इसका उदहारण है :
#include<stdio.h>
#include<conio.h>
struct detail
{
char name[15];
int age;
char city[15];
int salary;
};
void main()
{
struct detail candidate;
d=sizeof(candidate);
printf(“size of Structure candidate=%d “,d);
getch();
}
यह पर ‘d’ एक variable है जो sizeof() operator के द्वारा दिए गया Structure की size को calculate करता है|
अधिकाश 32 बिट कंप्यूटर के लिए उपर लिखे प्रोग्राम का आउटपुट होगा :
size of Structure candidate=34
Unions : यूनियन
Unions भी एक user define data type है |जो structure data type की तरह , दो या दो से अधिक अलग अलग data type के variable को store करता है|
लेकिन difference ये है की unions data type मे सभी members के लिए एक ही storage location को occupy करता है |Structure data type मे , सभी members के लिए अलग अलग storage location occupy होगी |
इसका syntax है :-
union union_name
{
members;
}union variable_name ;
उदाहरण के लिए:
union data
{
int a;
float b;
char c;
}data1;
इस उदहारण मे , data एक union data type है |जिसमे तीन data variables (integer,float ,character) के लिए केवल 4 बाइट का storage occupy होगा |जो की float की maximum storage space 4 bytes होती है |
Union data type मे एक समय पर केवल एक ही variable के लिए use कर सकते है |
Union members को access करने के लिए भी member operator ‘.’ का use होता है |इसका उदहारण है :-
data1.a=-232;
data1.b=12.234;
ये दोनों statements एक साथ execute नहीं हो सकता है क्योकि union data type केवल एक storage space allocate करता है |पहले statement से इस storage अपके मे integer value 232 store हो जायेगा |और दूसरा statement execute नहीं होगा |
जब union data type को initial structure की तरह कर सकते है |लेकिन value का type,union data type के first data type के data type का होना चाहिए|
union data data1={12}; // ये initialization statement सही है //
union data data1={12.343}; // ये initialization statement सही नहीं है क्योकि union data का first variable integer है //
union data type को array ,function के साथ use कर सकते है |
आगे article मे C language का most important concept ‘Pointer’ को study करेगे |
हिंदी माध्यम नोट्स
Class 6
Hindi social science science maths English
Class 7
Hindi social science science maths English
Class 8
Hindi social science science maths English
Class 9
Hindi social science science Maths English
Class 10
Hindi Social science science Maths English
Class 11
Hindi sociology physics physical education maths english economics geography History
chemistry business studies biology accountancy political science
Class 12
Hindi physics physical education maths english economics
chemistry business studies biology accountancy Political science History sociology
English medium Notes
Class 6
Hindi social science science maths English
Class 7
Hindi social science science maths English
Class 8
Hindi social science science maths English
Class 9
Hindi social science science Maths English
Class 10
Hindi Social science science Maths English
Class 11
Hindi physics physical education maths entrepreneurship english economics
chemistry business studies biology accountancy
Class 12
Hindi physics physical education maths entrepreneurship english economics