15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту

Borland C++ Builder FAQ
Составлен по материалам форума на Исходниках.Ru
Содержание Последнее обновление: 14.02.2004

Как узнать является ли строка числом?

Автор: OlegGG, trainer
Исходная ссылка: - - -

Для большинства версий Borland C++ Builder можно использовать функции StrToInt(для целочисленных), StrToFloat(для действительных) или sscanf:
AnsiString s = "123";
int i;
try {
   i = StrToInt(s);
} catch( EConvertError &ex ) {
   i = 0;
   ShowMessage("Строка в переменной s числа не содержит");
}
AnsiString s = "123";
int i;
if( sscanf(s.c_str(),"%d",&i) != 1 ) {
   ShowMessage("Строка в переменной s числа не содержит");
}

В Borland C++ Builder 6 можно также использовать функцию TryStrToInt и TryToStrFloat:
AnsiString s = "123";
int i;
if (TryStrToInt(s,i))
        {
        ShowMessage("Число аднака :)");
        }
else
        {
        ShowMessage("НЕ Число аднака :)");
        }