Функции работы со строками и символами в C++
Строка - массив символов, заканчивающийся нуль-символом.
В С++ две возможности работы со строками:
• функции, унаследованные из библиотеки С (заголовочный файл
• библиотечный класс C++ string, предоставляющий более широкие возможности представления, обработки и контроля строк.
Библиотека С++ содержит функции:
• копирования строк (strcpy, strncpy);
• сравнения (strcmp, strncmp);
• объединения строк (strcat, strncat);
• поиска подстроки (strstr);
• поиска вхождения символа (strchr, strrchr, strpbrk);
• определения длины строки (strlen)
• другие.
В заголовочных файлах
• double atof(const char* p) преобразует переданную строку в double;
• int atoi (const char* p) преобразует переданную строку в int;
• long atol (const char* p) преобразует переданную строку в long.
Важно. Пробелы и табуляции в начале строки пропускаются.
Важно. Преобразование прекращается при встрече недопустимого символа или конца строки.
Важно. Если строку нельзя преобразовать в число, возвращается 0. Если число выходит за пределы диапазона данного типа, переменной еrrno (заголовочный файл <сеrrno>) присваивается значение ERANGE и возвращается допустимое число.
Пример (программа заполняет массив типа double из строки):
#include
Важно. Рекомендуется пользоваться стандартными функциями, а не писать собственные циклы проверки, так как это снижает количество ошибок в программе.
В библиотеке есть функции tolower и toupper, переводящие символ латинского алфавита соответственно в нижний и верхний регистр.
Для каждой из перечисленных функций есть ее аналог для многобайтных символов типа wchar_t, содержащий в названии букву w.
