Массив строк в C
В программировании C String представляет собой одномерный массив символов и определяется как массив символов. Но массив строк в C — это двумерный массив типов символов. Каждая строка заканчивается нулевым символом ( ). Это приложение двумерного массива.
Синтаксис:
char variable_name[r] = {list of string};
Здесь,
- var_name — это имя переменной в C.
- r — максимальное количество строковых значений, которое может храниться в массиве строк.
- c — максимальное количество значений символов, которое может храниться в каждом массиве строк.
Пример:
Ниже представлено представление вышеуказанной программы.
У нас есть 3 строки и 10 столбцов, указанных в нашем массиве строк, но из-за предварительного указания размера массива строк потребление пространства велико. Итак, чтобы избежать большого потребления места в нашей программе, мы можем использовать массив указателей в C.
Недопустимые операции с массивами строк
Мы не можем напрямую изменить или присвоить значения массиву строк в C.
Пример:
char arr[3][10] = {"Geek", "Geeks", "Geekfor"};
Здесь arr[0] = «GFG»; // Это даст ошибку, которая говорит о назначении выражения с типом массива.
Чтобы изменить значения, мы можем использовать функцию strcpy() в C
strcpy(arr[0],"GFG"); // This will copy the value to the arr[0].
Массив указателей строк
В C мы можем использовать массив указателей. Вместо двумерного массива символов у нас может быть одномерный массив указателей. Здесь хранится указатель на первый символ строкового литерала.
Синтаксис:
char *arr[] = { "Geek", "Geeks", "Geekfor" };
Ниже приведена программа на C для печати массива указателей: