Форум программистов, компьютерный форум, киберфорум
Наши страницы

Ввод в консоле только чисел(запрет ввода других символов) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ генератор чисел http://www.cyberforum.ru/cpp-beginners/thread299689.html
Прошу Вас помочь мне в написание лабораторной работы, мне нужна на языке С Написать генератор псевдослучайных чисел по алгоритму f(n) = f(n-1) + f(n-2) + f(n-3) + f(n-4) ( f0 = f1 = f2 = f3 = 1)...
C++ 'sqrt' : ambiguous call to overloaded function здраствуйте! ошибка в заголовке. Чё то я запамятовал как указать компилятору какую именно версию функции использовать, думал так int pivot = arr; но это не то. Как правильно? заранее спасибо http://www.cyberforum.ru/cpp-beginners/thread299687.html
Что значит ошибка? C++
помогите пожалуйста, что делать она выдает мне ошибку error C2440: '=' : cannot convert from 'const char ' to 'char ' не знаю что с этим делать... вот кусок кода в котором она: #include...
Вывести K-й элемент файла C++
Дано целое число K и файл, содержащий неотрицательные целые числа. Вывести K-й элемент файла (элементы нумеруются от 1). Если такой элемент отсутствует, то вывести –1.
C++ Вектор http://www.cyberforum.ru/cpp-beginners/thread299585.html
Определить значение и порядковые номера двух крупнейших элементов введенного вектора
C++ Динамический шаг таймера Как сделать в С++ (и возможно ли это),чтобы пользователь мог самостоятельно устанавливать необходимый ему шаг таймера? Сделал по таймеру смену записей из базы данных. Объявил в OnInitDialog()... подробнее

Показать сообщение отдельно
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
20.05.2011, 19:51
Hotbed, string::erase() функция класса. У нее есть перегруженные версии. Подробнее в гугле.
В данном случае используется версия от двух итераторов. Суть : удаляем из контейнера диапазон начиная от начального итератора, заканчивая конечным (не включая).

Начальный итератор задается возвращаемым итератором функции std::remove_if(), которая принимает два итератора и функтор, в данном конкретном случае мы посылаем туда всю строку, от начала до конца, каждый символ строки посылается в функцию isdigit, на которую мы берем указатель (ptr_fun - синтаксический сахар, ибо not1 (адаптер отрицания для унарного функтора) - принимает исключительно функтор (объект структуры/класса с оператором () )).
Суть : проходим по каждому элементу - смотрим что вернул isdigit, если вернул false - удаляем элемент (точнее сдвигаем в конец уже мусор). std::remove_if() возвращает итератор на начало удаленной последовательности (то есть на первый элемент мусора сдвинутого в конец).

string::begin(), string::end() - функции. Возвращают итератор на первый элемент и на элемент следующий за последним соответственно.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru