Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Стандартные функции для работы со строками
Большинство функций для работы со строками содержится в библиотеке <string>.
1. Функция strcpy() Формат вызова: strcpy(str1, str2); Копирует посимвольно строку str2 в строку str1. Копирование прекращается в случае достижения нулевого байта строки. str2, поэтому длина str2 не должна превышать длину строки str1. Пример: char str[40]; strcpy(str,”Проверка копирования”);
2. Функция strcat(). Формат вызова: strcat(str1, str2);
Содержимое строки str2 присоединяется к содержимому строки str1. Пример: char str[80]; strcpy(str,”Для продолжения ”); strcat(str,” нажмите клавишу ”);
3. Функция strcmp()
Формат вызова: strcmp(str1, str2);
Сравнивает строки str1 и str2 и возвращает целое значение, различая строчные и прописные буквы: Пример: char str1[]=”Ошибка в базе данных”; char str2[]=”Ошибка в Базе данных”; int i = strcmp(str1,str2); // i>0, т.к. ’Б’ < ‘б’
4. Функция stricmp()
Сравнивает строки, не различая регистры символов. Формат вызова: stricmp(str1, str2); Возвращает одно из следующих значений: Пример: char str1[]=”Moon”; char str2[]=”MOON”; int i = stricmp(str1,str2); // i=0
5. Функция strupr() Формат вызова: strupr(str);
Преобразует строку str к верхнему регистру и возвращает полученную строку. Пример: char str[]=”abcde”; strupr(str); cout << str; // ABCDE
6. Функция strlwr() Формат вызова: strlwr(str); Преобразует строку str к нижнему регистру и возвращает полученную строку. Пример: char str[]=”ABRACADABRA”; strlwr(str); cout << str; // abracadabra
7. Функция strchr()
Формат вызова: strchr(str,ch);
Производить поиск символа ch в строке str и в случае успешного поиска возвращает позицию первого вхождения символа в строку. Если указанный символ не найден, функция возвращает нуль. Поиск символа начинается с начала строки.
8. Функция atoi(). Формат вызова: atoi(str);
Преобразует строку str в число типа int. Если в строке встречается символ, который не может быть преобразован, то функция возвращает 0 9. Функция atol(). Формат вызова: atol(str); Преобразует строку в число типа long. Пример: char str[]=”70 000”; long l = atol(str); cout << l; // 70000
10. Функция atof(). Формат вызова: atof(str);
Преобразует строку str в число с плавающей точкой типа double. Строка должна быть представлена в формате: [пробелы] [знак] [цифры].[цифры] [е] [знак] [цифры]
11. Функции ltoa(), itoa().
Выполняют обратное преобразование чисел (long и int) в строки. Формат вызова: ltoa(number, str, r); itoa(number, str,r); Здесь r - oснование системы счисления. Пример: int numb = 98765; char str[10]; itoa(numb, str, 10); // десятичная с.с. cout << numb << ‘\n’ << str;
12. Функция strlen(). Формат вызова: strlen(str);
Вычисляет длину строки без учета нулевого байта. Рассмотрим пример использование строковых функций.
#include <iostream.h> #include <string.h> void main() { char s1[80], s2[80]; strcpy(s1, “C++”); strcpy(s2, “ – это язык программирования.”); cout << “Длины строк: ” << strlen(s1); cout << “ “ << strlen(s2) << ‘\n’; if (! strcmp(s1,s2)) cout << “Эти строки равны. \n”; else cout << “Эти строки не равны. \n”; strcat (s1,s2); cout << s1 << ‘\n’; strcpy(s2,s1); cout << s1 << “ и “ << s2 << “\n”; if (!strcmp(s1,s2)) cout << “строки s1 и s2 теперь одинаковы. \n “; } Результат: Длины строк: 3 29 Эти строки не равны. С++ - это язык программирования С++ - это язык программирования. и С++ - это язык программирования. Строки s1 и s2 теперь одинаковы.
Пример. Задана строка, состоящая из m слов. Каждое слово содержит n символов. Написать программу вывода на экран первого слова, начинающего с заданного символа а #include <iostream.h> #include <conio.h> #define m 5 # define n 3 void main() { clrscr(); int i, j; char S[m*n]; // заданная строка char a; for (i=0; i<m*n; i++) cin >> S[i]; cin >> a; i = 0; while ((S[i]!= a) && (i<m*n)) { i+=n;} if (S[i] == a) { cout << “\n слово \n”; for (j = i; j<i+n; j++) cout << S[j]; } else cout << “\n Нет такого слова \n”; } Вопросы 1. Функция strcat(str1,str2) 1. копирует строку str2 в строку str1; 2. присоединяет содержимое строки str2 к содержимому str1; 3. сравнивает строки str1 и str2.
Date: 2015-12-12; view: 439; Нарушение авторских прав |