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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
#1

int в string - C++

14.08.2012, 17:21. Просмотров 1427. Ответов 15
Метки нет (Все метки)

У меня в переменных x и y содержатся определенные числа, причем переменные типа string. Мне нужно как то сложить эти числа и поместить в новую переменную. Как мне это осуществить?



И еще один вопрос: как можно можно преобразовать тип string в int или наоборот, если в переменной содержится число
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.08.2012, 17:21     int в string
Посмотрите здесь:

Int to string - C++
Помогите перевести из Int в String, среда разработки: VS10 Express

Int to string - C++
Какой способ перевода Int в String самый лёгкий ? В делфи привык писать Inttostr (i) , а на с++ такое есть ?

Int to String - C++
Подскажите стандартную функцию для конвертирования Int to String или других чисел в string

string в int - C++
народ подскажите пожалуйств как строку в число перевести? например string в int

string to int, int to string - C++
Вообщем интересует сабж. Нашел в интернете две функции atoi & itoa. Как-то не сраслось с ними. Может пояснит кто их работу, пожалуйста....

String в Int - C++
Как можно преобразовать String в Int ? Не могли бы вы привести пример на массиве строк ?

из int в string - C++
объясните ,пжлста, где ошибка. собственно задание такое: Enter one real and one integer number: 2.71828183 1392 The real is: _ _ _ _...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
KostyaKulakov
Заблокирован
14.08.2012, 17:26     int в string #2
заключи в цикл. попробуй отуда вытащить и заточить в int
DiffEreD
1429 / 766 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
14.08.2012, 17:28     int в string #3
Я пользуюсь такими функциями:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
long long my_atoll(string instr)  //преобразует string  в число типа long long
{
    long long retval = 0;
    string::iterator iter = instr.begin();
    for (int i = 0; iter!=instr.end(); iter++) {
        retval = 10*retval + (*iter - '0');
    }
    return retval;
}
 
template <class T>
string numberToString(T val) //преобразует число в string
{
    string str;
    stringstream ss;
    ss<<val;
    ss>>str;
    return str;
}
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
14.08.2012, 17:29  [ТС]     int в string #4
Цитата Сообщение от KostyaKulakov Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    string x = "5";
    string y = "32";
 
    cout << "x: " << x << ' ' << "y: " << y << endl;
 
    string result = x + y;
    cout << endl << result << endl;
}
А наоборот int в string можно?
DiffEreD
1429 / 766 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
14.08.2012, 17:33     int в string #5
Цитата Сообщение от Egor138 Посмотреть сообщение
string result = x + y;
Это конкатенация строк, а вам походу нужно получить сумму чисел хранящихся в строках.
dr.curse
387 / 343 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
14.08.2012, 17:44     int в string #6
Цитата Сообщение от yuron_477 Посмотреть сообщение
long long my_atoll(string instr) *//преобразует string *в число типа long long
{
* * long long retval = 0;
* * string::iterator iter = instr.begin();
* * for (int i = 0; iter!=instr.end(); iter++) {
* * * * retval = 10*retval + (*iter - '0');
* * }
* * return retval;
}
а зачем так мудрить? во первых зачем итератор? а во вторых можно и с помощью stringstream-а
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
14.08.2012, 17:46  [ТС]     int в string #7
Цитата Сообщение от yuron_477 Посмотреть сообщение
long long my_atoll(string instr) //преобразует string в число типа long long
{
long long retval = 0;
string::iterator iter = instr.begin();
for (int i = 0; iter!=instr.end(); iter++) {
retval = 10*retval + (*iter - '0');
}
return retval;
}
А можно немного подробнее, а то что то я не совсем разобрался

Добавлено через 48 секунд
Цитата Сообщение от aram_gyumri Посмотреть сообщение
а зачем так мудрить? во первых зачем итератор? а во вторых можно и с помощью stringstream-а


Предложи свой способ
dr.curse
387 / 343 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
14.08.2012, 17:49     int в string #8
Цитата Сообщение от Egor138 Посмотреть сообщение
Предложи свой способ
C++
1
2
3
4
5
6
7
long long my_atoll(std::string instr)  //преобразует string  в число типа long long
{
    long long retval;
    std::stringstream ss(instr);
    ss>>retval;
    return retval;
}
novi4ok
551 / 504 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
14.08.2012, 17:51     int в string #9
C++
1
2
3
4
5
char buffer [16];
std::string x = "1";
std::string y = "2";
::sprintf (buffer, "%d", ::atoi (x.c_str(()) + ::atoi(y.c_str()));
std::string z = buffer;
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
14.08.2012, 18:01     int в string #10
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <string>
 
int main()
{
    std::string s = "123232";
    long long ll = std::stoll(s);
    std::cout << ll << std::endl;
    std::string s2 = std::to_string(ll);
    std::cout << s2 << std::endl;
}
http://liveworkspace.org/code/1b08bc...a223d92ad92ec7
dr.curse
387 / 343 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
14.08.2012, 18:03     int в string #11
ForEveR, std::to_string это из С++11?
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
14.08.2012, 18:04     int в string #12
aram_gyumri, Ага. std::stoll аналогично.
DiffEreD
1429 / 766 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
14.08.2012, 18:14     int в string #13
А где можно найти описания всех новых функций которые появились в С++11?
dr.curse
387 / 343 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
14.08.2012, 18:17     int в string #14
http://en.cppreference.com/w/
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.08.2012, 18:23     int в string
Еще ссылки по теме:

Преобразование string в int - C++
нужно текст (string) из textBox преобразовать в число (int)

Из string в int и обратно - C++
Подскажите, пожалуйста, функцию для перевода из sting в int и обратную

Преобразование string в int - C++
Добрый день. Есть переменная типа string, в которой записана цифра. Как мою строку перевести к int?

Преобразовать int в string - C++
Как перевести переменную int в string?

Преобразовать string в int .? - C++
строки 66 и 71 соответственно, считываю из файла в string, как преобразовать? кроме static_cast не знаю И по прежнему не понимаю как...


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

Или воспользуйтесь поиском по форуму:
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
14.08.2012, 18:23     int в string #15
yuron_477, В стандарте языка. Наиболее полно и четко исключительно там.
Yandex
Объявления
14.08.2012, 18:23     int в string
Ответ Создать тему
Опции темы

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