C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Длина Ansistring
Александр
Отправлено: 07.03.2004, 14:25


Не зарегистрирован







Как узнать длины Ansistring?
При использовании Length() Билдер ее не узнает.
Guest
Отправлено: 07.03.2004, 14:34


Не зарегистрирован







Все разобрался, я жуткий тормоз:)
Александр
Отправлено: 07.03.2004, 15:10


Не зарегистрирован







Помогите разобратся с глюком.
Есть Edit1 , в него вбивается число типа x(число),0W .
При его считывании в переменную происходит глюк.
y=StrToFloat(Edit1->Text);
значение y=x,0W00343184758(после 4 знака вылезают рендомные числа).

С чем может быть связано и чем лечится?
Заранее благодарен.
exp
Отправлено: 09.03.2004, 00:17


Мастер участка

Группа: Участник
Сообщений: 304



Хм... А может в Edit'е есть еще и непечатные символы, когда ты читаешь с него. Попробуй очищать Edit в самом начале при запуске программы. Шаманство, конечно, но вдруг поможет
olegenty
Отправлено: 09.03.2004, 07:53


Ветеран

Группа: Модератор
Сообщений: 2412



если проблема и правда в непечатных символах, то бороться надо вот так:
CODE
Edit1->Text.Trim()
Александр
Отправлено: 09.03.2004, 15:36


Не зарегистрирован







Ритуальные пляски с бубном вокруг компа не помогли:)
Asher
Отправлено: 09.03.2004, 15:50


Мастер участка

Группа: Модератор
Сообщений: 550



Привет.
А что это за
QUOTE
число типа x(число),0W

Конкретное тестовое содержимое Edit1->Text укажите пжлста.
Guest
Отправлено: 09.03.2004, 16:25


Не зарегистрирован







некое число,0 дальше любое количество любых цифр.
Например 10.01, 12.056 и т.д..
marconi
Отправлено: 09.03.2004, 16:41


Станционный диспетчер

Группа: Участник
Сообщений: 86



Может человек шифровальную машину изобретает, поэтому такое число назло врагам.cool.gif
marconi
Отправлено: 09.03.2004, 16:43


Станционный диспетчер

Группа: Участник
Сообщений: 86



Может человек шифровальную машину изобретает, поэтому такое число назло врагам.cool.gif
Asher
Отправлено: 09.03.2004, 17:41


Мастер участка

Группа: Модератор
Сообщений: 550



StrToFloat чувствителен к DecimalSeparator.

При Русских настройках это ",".
С "." вообще не преобразовывает — вылетает по Exeption. Если ты этого не видишь — то скорей всего у тебя отключены Exeption.
Александр
Отправлено: 09.03.2004, 17:52


Не зарегистрирован







у меня там ",",и он ее понимает.
Asher
Отправлено: 09.03.2004, 18:12


Мастер участка

Группа: Модератор
Сообщений: 550



Ага. Сообразил!

У тебя случаем y не float?
Если да, то все нормально. Это ограничение представления числа.
Тогда попробуй double
Guest
Отправлено: 09.03.2004, 20:13


Не зарегистрирован







Все,с double получилось.
Спасибо большое!

Вернуться в Вопросы программирования в C++Builder