Строки в C
НАВИГАЦИЯ ПО СТРАНИЦЕ
Строки в языке программирования C представляют собой последовательность символов, заканчивающуюся нулевым символом ('\0'). Этот нулевой символ используется для обозначения конца строки в C. Строки могут быть представлены как массивы символов. Вот как работать с строками в C:
Объявление строк :
Строки могут быть объявлены как массивы символов. Например:
char myString[20]; // Объявление строки, которая может содержать до 19 символов плюс нулевой символ
Инициализация строк :
Строки можно инициализировать при их объявлении или позже:
char greeting[] = "Привет, мир!"; // Инициализация строки при объявлении
char name[10]; // Объявление строки
strcpy(name, "Иван"); // Копирование строки в переменную name
Ввод строк с клавиатуры :
Для ввода строк с клавиатуры можно использовать функцию gets (хотя она устарела и не рекомендуется использовать из-за проблем с безопасностью) или лучше использовать fgets:
char input[50];
printf("Введите строку: ");
fgets(input, sizeof(input), stdin);
Вывод строк :
Для вывода строк используется функция printf:
char greeting[] = "Привет, мир!";
printf("Сообщение: %s\n", greeting);
Операции над строками :
В C существует множество функций, предназначенных для работы с строками. Некоторые из них включают:
strlen: Вычисление длины строки.
strcpy: Копирование одной строки в другую.
strcat: Сцепление (конкатенация) двух строк.
strcmp: Сравнение строк на равенство.
Примеры использования:
#include <stdio.h>
#include <string.h>
int main() {
char str1[20] = "Hello, ";
char str2[] = "world!";
strcat(str1, str2); // Сцепляем строки
printf("Результат: %s\n", str1);
char name1[] = "Alice";
char name2[] = "Bob";
int result = strcmp(name1, name2); // Сравниваем строки
if (result == 0) {
printf("Имена одинаковы.\n");
} else {
printf("Имена разные.\n");
}
return 0;
}
Запомните, что строки в C завершаются нулевым символом ('\0'). Поэтому вы должны уделять особое внимание управлению этим нулевым символом, чтобы избежать проблем с переполнением буфера.