Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

C. Тема 1. Раздел 7

.pdf
Скачиваний:
15
Добавлен:
21.03.2016
Размер:
487.97 Кб
Скачать

Тема 1. Основные сведения о языке. Раздел 7. Строки

Представление строк в Си

Операции со строками

Unicode

Часть 1

В языке Си нет специального типа данных для представления строк

Строки представлены массивами символов

В конце каждой строки размещается символ с кодом 0

Строковая константа – это последовательность символов, заключённая в кавычки

Примеры

"This is ANSI C simple string"

"Это простейшая строка в языке Си"

В конце каждой строковой константы компилятор автоматически добавляет символ

'\0'

Вставка в строку символа кавычек

"asdf\"ghjk"

char string1[] = "Some string";

char string2[] =

{'S', 'o', 'm', 'e', ' ', 's', 't', 'r', 'i', 'n', 'g', '\0'};

char *string3 = "Some string";

В чём разница этих вариантов инициализации?

string1++;

// Ошибка

компиляции

string2++;

// Ошибка

компиляции

string3++;

// Допустимо

string1 = string3; // Ошибка компиляции

string1 = string2; // Ошибка компиляции

string3 = string1; // Допустимо

Часть 2

Складывать

string1 + strng2

Сравнивать

string1 == string2

string1 != string2

string1 > string2

string1 >= string2

Копировать

string1 = string2

Использовать функции стандартной библиотеки string

strcat – конкатенация (сложение) двух строк

strncat – конкатенация (сложение) первой строки и n начальных символов второй строки

strcmp – сравнение двух строк

strncmp – сравнение первых n символов двух строк

strcpy – копирование одной строки в другую строку

strncpy – копирование первых n символов одной строки в другую строку

strlen – определение длины строки (не путать с sizeof)

strchr – поиск в строке первого вхождения указанного символа

strrchr – поиск в строке последнего вхождения указанного символа

strpbrk – поиск в одной строке любого из множества символов, входящих во вторую строку

strspn – определение длины отрезка одной строки, содержащего символы из множества символов, входящих во вторую строку

strcspn – определение длины отрезка одной строки, не содержащего символы второй строки

strtok – выделяет из одной строки лексемы (кусочки), разделенные любым из множества символов (разделителей), входящих во вторую строку