![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| UnixBeginner |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 10.11.2005 Где: Россия, г. Калини нград Репутация: нет Всего: нет |
Необходимо преобразовать численный тип в строку.
Использовать только стандартные средства. Есть предположение что нужно использовать потоковые итераторы, т.е. сначала туда ввести число, а потом из него вывести это число и присвоить его строке. Задумка есть, а конкретно как это реализовать, не знаю. Помогите. |
|||
|
||||
| Mayk |
|
|||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
1) int a = atoi ("123")
2) int a; std::istringstream str("123"); str >> a; -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
| UnixBeginner |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 10.11.2005 Где: Россия, г. Калини нград Репутация: нет Всего: нет |
Все, уже сделал сам.
Может кому понадобится:
Если у кого есть другие идеи и возможно лучше, то давайте.... Добавлено @ 15:21
а это наоборот, перевод строки в число. Это сообщение отредактировал(а) UnixBeginner - 16.1.2006, 15:23 |
||||
|
|||||
| LuckLess |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 15.9.2004 Репутация: 1 Всего: 1 |
я бы обощил твой код
UnixBeginner
|
|||
|
||||
| UnixBeginner |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 10.11.2005 Где: Россия, г. Калини нград Репутация: нет Всего: нет |
Да, наврное так быдет лучше. |
|||
|
||||
| comcon1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 11.6.2005 Где: Москва ДАС-МГУ Репутация: 12 Всего: 17 |
Этот код уже обобщили и переобобщили до Вас. Причем примерно таким же путем.
Использование:
Причем если для типа, который у меня double определен оператор ostream & << (ostream &, const type &), то этот тип также может преобразовываться при помощи этой команды. А реализация этого шаблона идейно такое же, тока более универсальная. Он в контрукторе пишет в istringstream и читает оттуда строку. |
|||
|
||||
| blackofe |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 173 Регистрация: 29.11.2005 Репутация: 4 Всего: 4 |
к сожалению itoa() не входит в стандарт ANSI C (наверное, как следствие, в stl). но ведь есть еще sprintf():
Это сообщение отредактировал(а) blackofe - 17.1.2006, 20:48 |
|||
|
||||
| np9mi7 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 553 Регистрация: 17.8.2003 Где: Volgograd, Russia Репутация: 5 Всего: 10 |
UnixBeginner, используй строковые потоки, но вот задумка с new вообще лишняя;
|
|||
|
||||
| chipset |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 165 |
--------------------
|
|||
|
||||
| Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 51 Всего: 70 |
||||
|
||||
| LuckLess |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 15.9.2004 Репутация: 1 Всего: 1 |
comcon1
boost - не стандарт. вопрос про стандартные средства. |
|||
|
||||
| UnixBeginner |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 10.11.2005 Где: Россия, г. Калини нград Репутация: нет Всего: нет |
Как раз std::ostingstream и имеется ввиду. Посмотрите примеры выше,
например 3-й по счету:
Вот вам и использование строковых потоков. Все работает, проверено. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |