Struktur i c

Struktur i c
Struktur er et viktig konsept i C. Det er to typer datatyper som finnes i C. De er primitive datatyper og ikke-primitive eller brukerdefinerte datatyper. Strukturen er et eksempel på en ikke-primitiv datatype.

Hva er struktur

Struktur er en måte å gruppere variabler på. Noen ganger må vi lagre litt informasjon i en gruppe.

Anta at vi må lagre 100 studenters informasjon. Informasjon betyr navn, adresse, mobilnummer, kjønn, merker, aggregater osv. I denne situasjonen, hvis vi lagrer disse dataene til flere variabler for hver student, blir programmet veldig komplekst, og det øker utførelseshastigheten til programmet.

For å redusere dette problemet, introduserer vi struktur. Ved hjelp av struktur kan vi gruppere disse variablene til hver student til en enkelt variabel.

Struktur er en samling av forskjellige elementer. Ulik betyr at vi kan lagre forskjellige datatypeverdier som Int, Char, Float, String, etc.

Hvis vi lagrer en students informasjon, må vi lagre navnet hans, merker, mobilnummer osv. Navnet er en streng; Et merke er en flottør; Mobilnr er et heltallsarray. Så det er en gruppe forskjellige elementer.

Å definere struktur betyr å lage en ny datatype, Og vi vet at det å lage en ny datatype betyr at vi bruker her ikke-primitiv datatype.

Hvordan definere en struktur

struct Dato // Definere en struktur;

int d, m, y;
;
struct student // definere en annen struktur;

int roll_no;
char -navn [30];
int alder;

Den ovennevnte datoen og studenten er nye datatyper kalt brukerdefinerte datatyper. Denne typen datatype må defineres i programmet vårt. Fordi primitiv datatype er definert i C, men ikke-primitiv datatype ikke er definert i C, må den defineres av brukeren. For dette må vi skrive et nøkkelord som heter struktur Før navnet på den brukerdefinerte datatypen.

Minneforbruk

Ingen minne konsumeres for en definisjon av struktur. Fordi minne konsumeres for erklæringen om en variabel, men ikke i tilfelle av å definere datatype.

Å definere struktur betyr å lage en ny datatype; Minnet forbrukes ikke. Minnet konsumeres på erklæringen om en bestemt type variabel

Hvor kan vi definere struktur

Vi kan definere en struktur som lokalt eller globalt avhengig av kravet til programmet.

Hvordan lager du variabler gjennom struktur

Programmering Eksempel1:

#inkludere
struct Dato // Definere en strukturglobalt;

int d, m, y;
;
struct Dato D1;
int main ()

D1.d = 24; // tilordne verdier til medlemsvariablene til D1;
D1.m = 4;
D1.y = 2022;
printf (“Dato er: %d %d %d“, d1.D, D1.M, D1.y);
RETUN0;

Produksjon

Forklaring

Her oppretter vi en datatype globalt. For å definere en datatype, bruker vi nøkkelordstruktur. Nå erklærer vi en variabel D1 uten initialisering. Inne i hovedfunksjonen tildeler vi verdiene til medlemsvariabelen til dato; De er D1.D, D1.M, D1.y. Nå skriver vi ut verdiene.

Programmering Eksempel 2

#inkludere
Struct Dato // Definere en struktur globalt;

int d, m, y;
;
int main ()

struct Dato d1 = 24, 4, 2022;
// erklæring og tildeling av verdier lokalt;
printf (“Dato er: %d %d %d“, d1.D, D1.M, D1.y);
retur 0;

Produksjon

Forklaring

Her definerer vi datatype globalt. Inne i hovedfunksjonen (), erklærer vi og tildeler en variabel D1 av datatype. Så denne variabelen D1 fungerer som en lokal variabel. Her går verdiene automatisk til medlemsvariabelen på datoen. Nå skriver vi ut datoen.

Programmeringseksempel 3

#inkludere
Struct Dato // Definere en struktur globalt;

int d, m, y;
;
struct Dato D1;
int main ()

printf (“Skriv inn en dato:”);
SCANF (“ %D/ %D/ %D”, & D1.d, & d1.y, & d1.y); // Oppgi dato fra brukeren;
printf (“Dato er: %d %d %d“, d1.D, D1.M, D1.y);
retur 0;

Produksjon

Selvreferansestruktur

Selvreferansestruktur er også en struktur. Det er en struktur med pekere som peker på samme type struktur som medlem. Vi viser et eksempel nedenfor.

Programmering Eksempel 4

#inkludere
int main ()

Struct Node

int -data;
struct node * link;
;
Struct Node N1;
n1. data = 5;
n1 . lenke = null;
Struct Node N2;
n2. Data = 7;
n2. Lenke = null;
n1. Link = & n2; // adressen til N2 er tildelt å koble en del av N1.
printf (“Verdien av data er: %d”, n1. data);
printf (“Verdien av lenken er: %d”, n1. lenke -> data);
retur 0;

Produksjon

Forklaring

Ovennevnte program er et eksempel på selvreferansestruktur. Her oppretter vi en brukerdefinert datatype kalt en node. Den har to datamedlemmer i kroppen. Den ene er data; En annen er koblet sammen. Link er en peker hvilken type som er nodetype. Det betyr at den bare kan inneholde adressen til data fra nodetypen. Nå oppretter vi en variabel N1 som er en datatype. Her tildeler vi en INT -type verdi 5. I den koblede delen tildeler vi null.

En annen variabel, B, er også en datatype av nodetypen. 7 og null lagres i sine respektive datamedlemmer. Det viktige aspektet er at vi lagrer adressen til B til lenken til en. Det betyr at koblingen til en variabel nå peker på B -variabelen. Det kalles selvhenvisningsstruktur.

Anvendelse av selvhenvisningsstruktur

Selvreferansestruktur brukes enormt innen lenkets liste, trær.

Konklusjon

Fra strukturbegrepet har vi konkludert med at kravet til struktur i C er veldig viktig. Gjennom struktur kan vi lage vår egen datatype i henhold til kravet i programmet. Gjennom struktur kan vi lagre forskjellige typer metadata.