Форум программистов, компьютерный форум CyberForum.ru

Как извлечь только цифры из строки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Последовательные контейнеры. Векторы http://www.cyberforum.ru/cpp-beginners/thread970727.html
Помогите, пожалуйста, как в изначально пустой вектор вставить 100 элементов путем вставки в СЛУЧАЙНУЮ ПОЗИЦИЮ. Случайная позиция генерируется каждый раз заново при вставке очередного элемента. И аналогичное для удаления... я тут написал код, но он, почему-то не работает( Заранее спасибо. #include <Vector> // int main(){
C++ программу,которая предлагает пользователю ввести требуемые данные помогите,пожалуйста,написать программу В соответствии с персональным вариантом задания написать программу, которая предлагает пользователю ввести требуемые данные (параметры A,B,C,D,G,M,N,K,W для различных вариантов), проверяет корректность введенных данных (отрицательный или дробный возраст, нулевой год и т.д.), предлагает исправить некорректно введенные данные и вычисляет требуемые в задании... http://www.cyberforum.ru/cpp-beginners/thread970717.html
C++ найдите ошибку
вот скрин, пишет что синтаксическая ошибка, помогите!
C++ от структур к классам
Добрый вечер. Помогите пожалуйста разобраться в классах, только начал их изучать. Есть задание переделать структуру в класс ну и сделать все в оформлении ООП. #include "stdafx.h" #include <iostream> #include <string> #include <Windows.h> using namespace std;
C++ Как правильно подключить набор сертификатов в curl? http://www.cyberforum.ru/cpp-beginners/thread970691.html
Здравствуйте, есть следующий код: #include <stdio.h> #include <curl/curl.h> #include <string> int main(void) { CURL *curl; CURLcode res;
C++ При выводе появляется число -84215045 откуда оно не могу понять /* 13.5 Дан список из n целых чисел a1,a2,...,an. Вывести на экран элементы списка в указа- нной последовательности: an,a1,an-1,a2,...,a1,an */ #include <iostream> #include <iomanip> #include <locale.h> using namespace std; подробнее

Показать сообщение отдельно
mzarb
-211 / 7 / 1
Регистрация: 14.01.2013
Сообщений: 141
13.10.2013, 19:40  [ТС]     Как извлечь только цифры из строки
Нужно чтобы работало. Ну там половина вашего кода), но с ним все в порядке, я имею ввиду что там все просто. В общем, так работает :
C++
1
2
int i1 = atoi(find_number((str_file), found_pos).c_str());
i1 = status ? min((i1) + newtime, 999999999) : max((i1) - newtime, 0);
А так не работает :
C++
1
int i1 = status ? min((atoi(find_number((str_file), found_pos).c_str())) + newtime, 999999999) : max((atoi(find_number((str_file), found_pos).c_str())) - newtime, 0);
Но все же правильно, если выбран режим увеличения времени, то в status попадает 1, а если в status 1, то тернарный оператор выбирает min((atoi(find_number((str_file), found_pos).c_str())) + newtime, 999999999), дальше ваша функция find_number ищет в строке цифры, потом записывает их в другую строку и возвращает в atoi, а atoi преобразует строку в int и возвращает цифры в выражение min(возращенные цифры + newtime, 999999999), то есть получается к примеру возвращаемые цифры 444444444 + 555555555(значение newtime) и если сумма больше, чем 999999999, то в i1 должно записаться 999999999, а если меньше, то просто сумма запишется. Так почему же может не работать, ведь какая разница в объявление это все делать или раздельно в объявлении и определении?

Добавлено через 2 часа 11 минут
Всё, разобрался. Тернарный оператор из min при проверке вызывал функцию find_number, а потом и при выборе варианта, но found_pos уже был в конце строки, так как это был 3 вызов, если учитывать i1 с обычным вызовом и i2 с этим. Так что функция не искала чисел и atoi возвращала 0, который суммировался с newtime и записывался в переменную. В общем не досмотрел я. Придется использовать первый вариант, так как аналог второму не придумал.
 
Текущее время: 14:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru