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
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' };>
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>