Механизм строковых назначений имеет некоторые особенности, обусловленные соответствием длин строк получателя и источника:
- если длина получателя равна длине источника, то значение источника целиком помещается в получателя;
- если максимальная длина получателя превышает текущую длину источника, все содержимое источник попадает в получатель и ткущая длина получателя становится равной текущей длине источника;
- если максимальная длина получателя меньше текущей длины источника, значением получателя становятся первые литеры источника, которые поместились в получатель. текущая длина получателя равна максимальной длине получателя.
Формат:
char *strcat(char* ST1, const char* ST2);
Объединение строки ST1 и ST2 ,результат записывается в строку ST1.
При конкатенации надо побеспокоится, чтбы приемник принял сумму длин текущих источников.
Формат:
char *strcру(char* ST1, const char* ST2);
Копирует строку ST1 в строку ST2. При копировании строк надо побеспокоится, чтобы приемник принял длину текущего источника. Если максимальная длина получателя меньше текущей длины источника, значением получателя становятся первые литеры источника, которые поместились в получатель. текущая длина получателя равна максимальной длине получателя.
Формат:
Int strlen(const char* ST1);
Возвращает количество литеров без учета нулевого символа.
Примеры функций для работы со строками
Наименование
Назначение функций
strchar
Поиск первого вхождения заданного символа в строке
[const] char *strchar([const] char *str, int val)
strrchar
Поиск последнего вхождения заданногосимвола в строе
strcmp
Сравнение двух строк
int strcmp(const char *str, const char *str2)