V programování C je řetězec 1-D pole znaků a je definován jako pole znaků. Ale pole řetězců v C je dvourozměrné pole typů znaků. Každý řetězec je ukončen znakem null ( ). Jedná se o aplikaci 2D pole.
Syntax:
rovná se Java
char variable_name[r] = {list of string};> Tady,
- var_name je název proměnné v C. r je maximální počet hodnot řetězců, které lze uložit do pole řetězců. c je maximální počet hodnot znaků, které lze uložit do každého pole řetězců.
Příklad:
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;> }> |
>
>
podřetězec řetězec javaVýstup
String array Elements are: Geek Geeks Geekfor>
Níže je uvedena reprezentace výše uvedeného programu
V našem Array of String máme specifikovaných 3 řádky a 10 sloupců, ale kvůli předspecifikaci je velikost pole řetězců velká spotřeba místa. Abychom se vyhnuli vysoké spotřebě místa v našem programu, můžeme použít Array of Pointers v C.
Neplatné operace v polích řetězců
Nemůžeme přímo změnit nebo přiřadit hodnoty k poli řetězců v C.
Příklad:
char arr[3][10] = {'Geek', 'Geeks', 'Geekfor'};> Zde arr[0] = GFG; // Tím se zobrazí chyba, která říká přiřazení výrazu s typem pole.
Ke změně hodnot můžeme použít funkci strcpy() v C
strcpy(arr[0],'GFG'); // This will copy the value to the arr[0].>
Pole ukazatelů řetězců
V C můžeme použít pole ukazatelů. Namísto 2-dimenzionálního pole znaků můžeme mít jednorozměrné pole ukazatelů. Zde je uložen ukazatel na první znak řetězcového literálu.
Syntax:
C++ gui
char *arr[] = { 'Geek', 'Geeks', 'Geekfor' };>
Níže je uveden program C pro tisk pole ukazatelů:
C
// 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;> }> |
>
jarní bota
>Výstup
String array Elements are: Geek Geeks Geekfor>