C Programmeringsspråk er et av de berømte strukturerte språkene som inkluderer mange grunnleggende komponenter, og matriser er en av dem. Arrays blir referert til som en samling av lignende typer elementer som er lagret i sammenhengende minneblokker. Disse er av to typer: statisk matrise og dynamisk matrise. I den statiske matrisen er størrelsen på matrisen fikset. Men i et dynamisk utvalg tildeles minnet dynamisk.
Dette innlegget vil demonstrere:
Forutsetning: Installer C -kompilator
C -kompilator brukes til å transformere kildekode til binær eller objektkode eller for å utføre C -programmet. For å installere C -kompilatoren på Windows, kan du sjekke ut den andre dedikerte artikkelen.
Hva er “Malloc ()” i C -programmering?
Arrayen i C -programmering har en definert størrelse. Noen ganger kan imidlertid matrisestørrelsen være utilstrekkelig eller overdreven, noe som sløser med minnet. For å overvinne matrisebegrensninger bruker utviklere flere funksjoner for å tildele minne dynamisk til matrisen. Ulike C -bibliotekfunksjoner, for eksempel gratis (), calloc (), realloc () og malloc (), brukes til å tilordne minne dynamisk. Mer spesifikt er Malloc () en minnetildelingsfunksjon som brukes til å reservere minne for et spesifisert antall byte.
Syntaks
Pointer = (Cast-type*) Malloc (størrelse på byte)
Hvordan lage en rekke strenger ved å bruke “Malloc ()” i C -programmering?
For å lage en rekke strenger og tilordne den en minneblokk gjennom “Malloc ()”Funksjon, se på det oppgitte eksemplet.
Trinn 1: Lag en rekke streng ved å bruke "Malloc ()" -funksjonen
For å lage en rekke strenger ved hjelp av C Standard Library -funksjonen “Malloc ()”Åpne først Visual Studio Code Editor på Windows og lim inn den medfølgende koden i en programfil med".c" Utvidelse:
#inkludere
#inkludere
#inkludere
Int Main (Void)
int størrelse, i;
printf ("Vennligst skriv inn størrelsen på array: \ n");
scanf ("%d", og størrelse);
char *str_array [størrelse];
char array_i [størrelse];
printf ("Enter The Strings: \ n");
for (i = 0; i
scanf ("%s", array_i);
str_array [i] = (char*) malloc (strlen (array_i)*sizeof (char));
strcpy (str_array [i], array_i);
printf ("Stringene dine var: \ n");
for (i = 0; i
printf ("%s \ n", str_array [i]);
retur 0;
Beskrivelsen av den ovennevnte koden er gitt nedenfor:
Trinn 2: Åpen terminal
Deretter lanserer du terminalen fra Visual Studio -menylinjen:
Trinn 3: Kompiler C -programmet
Neste, bruk "GCC”C Compiler for å kompilere programmet ved å bruke den nevnte kommandoen:
> GCC Malloc.c
Her, “Malloc.c”Er C -programmet som vi har gitt instruksjoner i trinn 1:
Ved å gjøre det vil kompilatoren opprette en kjørbar fil for å kjøre C -programmet som vist nedenfor:
Trinn 4: Utfør samlet program
Deretter kjører du C -programmet ved å utføre “en.EXE”Fil:
> ./en.EXE
Det kan observeres at vi med hell har laget en dynamisk rekke strenger ved å bruke "Malloc ()”Funksjon.
Konklusjon
For å lage en rekke strenger ved å bruke “Malloc ()”C Standardfunksjon, Opprett først et enkelt C -program og erklær to matriser, hvorav den ene er en peker -matrise. Etter det, bruk "Malloc ()”Funksjon ved å bruke“Pointer-array = (Cast-type*) Malloc (input-array*størrelse på røye)”Syntaks. Deretter kopierer du strengmatriser ved hjelp av “Strcpy”Funksjon. Dette innlegget har demonstrert metoden for å lage en strengmatrise ved å bruke "Malloc ()”I C -programmering.