Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
MahovIV
5 / 6 / 4
Регистрация: 17.09.2013
Сообщений: 337
#1

Преобразование строки в массив цифр - C++

30.01.2014, 22:55. Просмотров 564. Ответов 3
Метки нет (Все метки)

Помогите разобраться с функцией для преобразования строки в массив цифр.
C++
1
2
3
4
5
6
7
8
void readlong (type &vec)
{
    std::string str;
    std::cin >> str;
 
    for (int i = str.size (); i > 0; i--)
        vec.push_back (atoi (str.substr (i - LEN, LEN).c_str()));
}
Объясните, как работает
C++
1
2
3
for (int i = str.size (); i > 0; i--)
        vec.push_back (atoi (str.substr (i - LEN, LEN).c_str()));
}
Функции в цикле по отдельности мне понятны, а вот их работа вместе не понятна.
http://www.cyberforum.ru/cpp-beginners/thread1904375.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.01.2014, 22:55
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Преобразование строки в массив цифр (C++):

Преобразование строки символов в массив
void stuToArr(char s, int ar, int&size) { int i=0; size=0; forever {...

Преобразование строки символов в массив
Подскажите, как преобразовать строку символов в массив?

Преобразование из строки юников в массив символов
Нужно преобразовать юникод строку в набор символов (массив чар). Как это...

Преобразование строки в массив, массива в строку
Здраствуйте, не могу сообразить как правильно выполнить задание: "Создать два...

Считывание строки в массив цифр
Как считать строку в массив чисел? Покажите работающий пример, который бы...

3
vovacreme
61 / 61 / 33
Регистрация: 14.01.2014
Сообщений: 145
30.01.2014, 23:21 #2
Цитата Сообщение от MahovIV Посмотреть сообщение
Объясните, как работает
C++
1
2
3
for (int i = str.size (); i > 0; i--)
        vec.push_back (atoi (str.substr (i - LEN, LEN).c_str()));
}
Функции в цикле по отдельности мне понятны, а вот их работа вместе не понятна.
Сначала str.substr (i - LEN, LEN) возвращает подстроку типа string из строки str, начиная с позиции i - LEN, длиной в LEN символов. Далее эта строка преобразовывается в строку в стиле С с помощью функции c_str(), после чего строка в стиле С передается функции atoi, которая преобразовывает ее в тип int. И на последнем этапе, с помощью метода push_back, int - значение добавляется в конец вектора vec.
0
Fene4ka_
102 / 102 / 40
Регистрация: 24.01.2014
Сообщений: 1,244
30.01.2014, 23:36 #3
а нельзя ли просто
вектор.push_back(int(строка))
0
vovacreme
61 / 61 / 33
Регистрация: 14.01.2014
Сообщений: 145
30.01.2014, 23:40 #4
Цитата Сообщение от Fene4ka_ Посмотреть сообщение
а нельзя ли просто
вектор.push_back(int(строка))
Нет, конечно.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.01.2014, 23:40
Привет! Вот еще темы с решениями:

Преобразование цифр в слова
У меня есть такая задачка. Есть текстовый файл с таким текстом: "Мой телефон...

Преобразование цифр в строку
Всем привет! Пишу небольшую программку, а именно просто идущие часы(такие же...

Вводится две строки, состоящие из цифр; из этих цифр составить максимальное число
Доброго времени суток! Нужно написать программу, где на экране вводится две...

Преобразование цифр в соответствующее строковое представление
Задача: Создайте вектор, хранящий десять строковых значений " zero " , " one "...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru