W programowaniu C ciąg znaków jest tablicą 1-D znaków i jest definiowany jako tablica znaków. Ale tablica ciągów w C jest dwuwymiarową tablicą typów znaków. Każdy ciąg znaków jest zakończony znakiem null ( ). Jest to zastosowanie tablicy 2D.
Składnia:
Zamień wszystko
char variable_name[r] = {list of string};>
Tutaj,
- nazwa_zmiennej to nazwa zmiennej w C. r to maksymalna liczba wartości łańcuchowych, które można przechowywać w tablicy ciągów. c to maksymalna liczba wartości znaków, które można przechowywać w każdej tablicy ciągów.
Przykład:
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;> }> |
kolejka priorytetowa
>
>Wyjście
String array Elements are: Geek Geeks Geekfor>
Poniżej znajduje się reprezentacja powyższego programu

Mamy 3 wiersze i 10 kolumn określone w naszej Array of String, ale ze względu na wstępne określenie rozmiaru tablicy ciągów, zużycie miejsca jest wysokie. Aby więc uniknąć dużego zużycia miejsca w naszym programie, możemy użyć tablicy wskaźników w C.
Nieprawidłowe operacje na tablicach ciągów
Nie możemy bezpośrednio zmieniać ani przypisywać wartości do tablicy ciągów w C.
Przykład:
char arr[3][10] = {'Geek', 'Geeks', 'Geekfor'};>
Tutaj arr[0] = GFG; // Spowoduje to błąd informujący o przypisaniu do wyrażenia o typie tablicy.
Aby zmienić wartości, możemy użyć funkcji strcpy() w C
strcpy(arr[0],'GFG'); // This will copy the value to the arr[0].>
Tablica wskaźników ciągów
W C możemy używać tablicy wskaźników. Zamiast dwuwymiarowej tablicy znaków, możemy mieć jednowymiarową tablicę wskaźników. Tutaj przechowywany jest wskaźnik do pierwszego znaku literału ciągu.
liczba pierwsza java
Składnia:
char *arr[] = { 'Geek', 'Geeks', 'Geekfor' };>

Poniżej znajduje się program w C, który wypisuje tablicę wskaźników:
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;> }> |
odwracanie ciągu Java
>
>Wyjście
String array Elements are: Geek Geeks Geekfor>