Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Как изящно преобразовать строку в число на С++?

Ответить
Настройки темы
Как изящно преобразовать строку в число на С++?

Старожил


Сообщения: 163
Благодарности: 0

Профиль | Отправить PM | Цитировать


В Делфях есть StrToInt, который возвращает  ошибку, точнее генерирует исключение, если преобразование сорвалось, то все замечательно. В С++ нашел только стандартную функцию (блин, забыл название)
но она в случае ошибки возвращает ноль, И что мне не нравится, так это то, что ноль тоже имеет право на существование. Решал эту проблему под конкретную ситуацию нагромождением лишних проверок последующих символов, сейчас опять надо, но надоело же уже неправильно делать, как это сделать более удобным способом?

-------
"Сколь бы сложной ни казалась проблема на первый взгляд, она, если правильно к ней подойти, окажется еще более сложной" - Пол Андерсон


Отправлено: 00:10, 11-02-2003

 

Пользователь


Сообщения: 65
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


есть char* itoa(int,char*,int)
возвращает нулевой указатель на строку если че не так.
и наоборот int atoi(char*)




[s]Исправлено: Vaulter, 20:53 11-02-2003[/s]

Отправлено: 02:19, 11-02-2003 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Crew
std::stream либо по сишному sscanf.

-------
http://ivank.ru


Отправлено: 18:36, 11-02-2003 | #3


Старожил


Сообщения: 163
Благодарности: 0

Профиль | Отправить PM | Цитировать


Vaulter
Цитата:
есть char* itoa(int,char*,int)
возвращает нулевой указатель на строку если че не так.
и наоборот int atoi(char*)
itoa конвертирует число в строку, речь не об этом
atoi
Цитата:
(блин, забыл название)
как раз и вызывает проблемы с нулем, так как этот злополучный 0  для нее код ошибки конвертации

ivank
Цитата:
либо по сишному sscanf
Тоже вернет 0


Добавлено:

std::stream

пространство имен std, насколько я знаю не может быть подключено к Borland 3.1, даже если скопировать файлы.
А посмотреть справку в MSDN я не могу, он у меня не ставится...
можно поподробнее? std::stream вызывает исключение или тоже 0?

-------
"Сколь бы сложной ни казалась проблема на первый взгляд, она, если правильно к ней подойти, окажется еще более сложной" - Пол Андерсон


Отправлено: 00:19, 12-02-2003 | #4


редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Crew
Очепятался, я имел ввиду std::sstream, исключение бросит вроде. А со ssacnf'ом ты ошибся, она возвращает код ошибки зависящий от успешности считывания строки во что-либо.

-------
http://ivank.ru


Отправлено: 20:35, 12-02-2003 | #5


Старожил


Сообщения: 163
Благодарности: 0

Профиль | Отправить PM | Цитировать


ivank
Да, моя неправда

-------
"Сколь бы сложной ни казалась проблема на первый взгляд, она, если правильно к ней подойти, окажется еще более сложной" - Пол Андерсон


Отправлено: 21:31, 12-02-2003 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Как изящно преобразовать строку в число на С++?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Как преобразовать текстовую формулу в числовой результат malev AutoIt 2 18-09-2009 11:09
как преобразовать формат видеоклипа созданного в Windows Movie Maker?? kirstinka Видео и аудио: обработка и кодирование 7 21-02-2009 22:06
[решено] Javascript | преобразовать 1154112977 в нормальное число hasherfrog Вебмастеру 3 29-07-2006 01:14
Excel | преобразовать строку в столбец BRAT2 Хочу все знать 2 19-12-2005 17:49
Как изящно переустановить ХР? Ihr Microsoft Windows 2000/XP 13 02-03-2003 16:04




 
Переход