Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Object Pascal: кроссплатформенные технологии > String->Real


Автор: Ak47black 19.3.2009, 20:23
Здравствуйте.
Хочу узнать как правильно реализовать (при этом нужно проверить правильное-ли число Real) 
Код

var
  a, b: Integer;
begin
  Val(s, a, b);

Если например s->'8.9' то получаю ошибку на втором символе (как я понял эта функция придназначенна для целых чисел)
А как с Real сделать?

Автор: THandle 19.3.2009, 20:50
Ak47black, должно преобразовывать.

Преобразовывает строковое значение в его числовое представление.

 
Цитата

Объявление:
 Procedure Val(S; Var V; Var Code : Integer);

Где:
  S    - переменная со строковым типом. Должна представлять
         последовательность символов, формирующих знаковое целое число.
  V    - переменная типа Real или Integer
  Code - переменная типа Integer

 Режим:
Windows, Real, Protected

 Замечания:
Преобразовывает строковое значение (S) в его числовое представление, как это
происходит при чтении из текстового файла с помощью Read. Code - позиция, в
которой произошла ошибка при преобразовании, или нуль, если ошибки не было.


Автор: Ak47black 19.3.2009, 22:01
Извиняюсь, я ошибку сделал в коде.
Вместо Real подставлял Integer.
Поэтому естественно и получал такой результат.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)