logo

Niz nizov v C

V programiranju C je niz 1-D niz znakov in je definiran kot niz znakov. Toda niz nizov v C je dvodimenzionalni niz vrst znakov. Vsak niz se konča z ničelnim znakom ( ). Je aplikacija 2d niza.

Sintaksa:



html oznake
char variable_name[r] = {list of string};>

tukaj,

    var_name je ime spremenljivke v C. r je največje število vrednosti niza, ki jih je mogoče shraniti v matriko nizov. c je največje število vrednosti znakov, ki jih je mogoče shraniti v posamezno matriko nizov.

primer:

C








// C Program to print Array> // of strings> #include> // Driver code> int> main()> {> >char> arr[3][10] = {>'Geek'>,> >'Geeks'>,>'Geekfor'>};> >printf>(>'String array Elements are: '>);> > >for> (>int> i = 0; i <3; i++)> >{> >printf>(>'%s '>, arr[i]);> >}> >return> 0;> }>

>

>

Izhod

dolžina niza bash
String array Elements are: Geek Geeks Geekfor>

Spodaj je predstavitev zgornjega programa

Spominska predstavitev matrike nizov

V naši matriki nizov imamo določene 3 vrstice in 10 stolpcev, vendar je poraba prostora velika zaradi vnaprejšnjega določanja velikosti matrike nizov. Torej, da bi se izognili veliki porabi prostora v našem programu, lahko uporabimo niz kazalcev v C.

Neveljavne operacije v nizih nizov

Ne moremo neposredno spremeniti ali dodeliti vrednosti nizu nizov v C.

c++ pretvori int v niz

primer:

 char arr[3][10] = {'Geek', 'Geeks', 'Geekfor'};>

Tukaj je arr[0] = GFG; // To bo dalo napako, ki pravi dodelitev izrazu z vrsto polja.

Za spreminjanje vrednosti lahko uporabimo funkcijo strcpy() v C

 strcpy(arr[0],'GFG'); // This will copy the value to the arr[0].>

Niz kazalcev nizov

V C lahko uporabimo niz kazalcev. Namesto 2-dimenzionalne matrike znakov imamo lahko enodimenzionalno matriko kazalcev. Tukaj je shranjen kazalec na prvi znak dobesednega niza.

Sintaksa:

char *arr[] = { 'Geek', 'Geeks', 'Geekfor' };>
Niz kazalcev nizov

Spodaj je program C za tiskanje niza kazalcev:

C


java vizualizator



// C Program to print Array> // of Pointers> #include> // Driver code> int> main()> {> >char> *arr[] = {>'Geek'>,>'Geeks'>,>'Geekfor'>};> >printf>(>'String array Elements are: '>);> > >for> (>int> i = 0; i <3; i++)> >{> >printf>(>'%s '>, arr[i]);> >}> >return> 0;> }>

>

>

Izhod

String array Elements are: Geek Geeks Geekfor>