#include #include "my_cstring.h" #include using namespace std; int main() { setlocale(LC_ALL, "Rus"); // пример работы с указателями //меняются местами значения переменных x и y double x = 3.14; double y = 105; cout << "Было: x="<< x << ", y=" << y << endl; swap_ptr(&x, &y); cout << "Стало: x=" << x << ", y=" << y << endl; // пример работы со строками // объявление строк (статических массивов символов) char str1[Max_Len]; char str2[Max_Len]; char str[Max_Len]; char c;//символ // можно объявлять и инициализировать //char str[] = "String"; // можно объявлять указатель и инициализировать // const char* str="string"; // строку можно объявлять и как динамический массив //char* str = new char[10]; cout << "Введите строку 1 (без кириллицы): "; // обычный cin не воспринимает пробелы, поэтому для ввода строки используется функция-член // getline объекта cin класса istream cin.getline(str1, Max_Len); // Для вывода строки можно использовать cout cout << str1 << endl; //длина массива str1=Max_Len = 256 (константа задана в заголовочном файле) cout << "Длина массива str1: "<< sizeof(str1) << endl; // длину строки можно определить ф-ей strlen из библиотеки cstring cout<< "Длина строки str1: " << strlen(str1) << endl; cout << "Введите строку 2 (без кириллицы): "; cin.getline(str2, Max_Len); cout << str2 << endl; cout << "Длина массива str2: " << sizeof(str2) << endl; cout << "Длина строки str2: " << strlen(str2) << endl; cout << "Сравнение строк с помощью пользовательской функции: "; cout << "str1 > str2? " << stringCompare(str1, str2) << endl; cout << "str2 > str1? " << stringCompare(str2, str1) << endl; // проверка с помощью библиотечной функции strcmp из библиотеки cstring cout << "Проверка сравнения с помощью функции strcmp "; cout << "str1 > str2? " << strcmp(str1, str2) << endl; cout << "str2 > str1? " << strcmp(str2, str1) << endl; cout << "Введено слов в строке 1: " << wordCount(str1) << endl; cout << "Введено слов в строке 2: " << wordCount(str2) << endl; ////Задание 1. Дана строка.Подсчитать количество содержащихся в ней цифр. //cout << "Введите строку (без кириллицы): "; //cin.getline(str, Max_Len); //cout << "Задание 1. Количество цифр в строке: " << countDigits(str) << endl; ////Задание 2. Найти индекс первого вхождения заданного символа //cout << "Введите символ" << endl; //cin >> c; //cout << "Задание 2. Индекс первого вхождения указанного символа в строке: " << firstIndex(str, c) << endl; ////Задание 3. Дана строка. Найти ее последний символ (вернуть указатель). ////Верните «нулевой указатель» (число 0 или nullptr), если строка пустая. //cout << "Задание 3. Последний символ в строке: "; //char *s = findLastChar(str); //if (s != 0) cout << s; else cout << "пустая строка"; //cout << endl; ////Задание 4. Поменять порядок символов в строке на противоположный //reverseString(str); //cout << "Задание 4. Меняем порядок символов: " << str << endl; system("pause"); return 0; }