![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 09.11.2009
Сообщений: 4
|
![]()
Здравствуйте, уважаемые программисты. У меня проект в VS2005. При использовании стандартной atof весьма и весьма глючит (подозреваю из-за ввода либо точки, либо запятой, разделяющих десятичную часть, но нет точной уверенности).
Это считывается с диалогового окна Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
![]()
Ну так и проверил бы с запятой для начала. :) Должна быть точка.
А как именно глючит? |
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 09.11.2009
Сообщений: 4
|
![]()
желательно бы универсальнее ее сделать.
Ввожу 0,01 - она переменную по-видимому, обнуляет полностью. Конечно, при 0.01 нет, но ведь люди могут ввести и так, и так, тем более, запятая эта - на цифровой клавиатуре находится... А еще не подскажете, как с помощью messagebox вывести эту действительную переменную, чтоб убедиться в рзультате? в С++ намного сложнее с этими действит. числами, нежели в delphi... |
![]() |
![]() |
![]() |
#4 | |
C++ hater
Старожил
Регистрация: 19.07.2009
Сообщений: 3,333
|
![]()
2Brigitta
естественно, чтобы преобразовать строку во float переменную, строка должна быть в правильном формате! что мешает проверить и заменить, если требуется, запятую на точку? А еще люди туда могут и буквы ввести, и ты опять будешь грешить на atof? Цитата:
Код:
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance |
|
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
![]()
1) Можно вручную заменить запятую на точку
2) Можно использовать класс CString Второе предпочтительнее, так как есть много стандартных функций, в том числе и для перевода числа в строку. |
![]() |
![]() |
![]() |
#6 |
Новичок
Джуниор
Регистрация: 09.11.2009
Сообщений: 4
|
![]()
ds.Dante а не подскажете, как это сделать?
я только знакомлюсь с с++, поэтому знаю там.. в общем-то ничего.. Если не затруднит, конечно... Спасибо за MessageBox) |
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
![]()
Советую активно использовать MSDN.
http://msdn.microsoft.com/en-us/libr...89(VS.80).aspx Замена символа - функция Replace(); Перевод числа в строку - Format(). |
![]() |
![]() |
![]() |
#8 |
Новичок
Джуниор
Регистрация: 09.11.2009
Сообщений: 4
|
![]()
Благодарю!
)) |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Преобразование строки | Neeter | Общие вопросы C/C++ | 5 | 05.07.2009 16:25 |
Паскаль. Преобразование строки | andronova | Помощь студентам | 1 | 13.04.2009 12:55 |
преобразование строки | xaero93 | Помощь студентам | 3 | 05.03.2009 13:00 |
Преобразование строки(ASM) | ManU | Помощь студентам | 4 | 11.06.2008 17:20 |
Преобразование строки во время | kayman | Общие вопросы Delphi | 7 | 02.10.2007 15:41 |