SORU
18 HAZİRAN 2009, PERŞEMBE


::std şamandıra için dize veya çift

float/doublestd::string dönüştürmek için çalışıyorum. Denedim:

std::string num = "0.6";
double temp = (double)atof(num.c_str());

Ama her zaman sıfır değerini döndürür. Başka yolu var mı?

CEVAP
18 HAZİRAN 2009, PERŞEMBE


std::string num = "0.6";
double temp = ::atof(num.c_str());

Benim için, bir çift için bir dize dönüştürmek için geçerli bir C sözdizimi.

Stringstream veya boost ile yapabilirsin::lexical_cast ama bu başarım.

< / ^ hr .

Ahaha Qt bir proje var ...

QString winOpacity("0.6");
double temp = winOpacity.toDouble();

Ekstra not:
Eğer giriş verileri ise const char*, QByteArray::toDouble bir daha hızlı olacaktır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:
C++

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BigDawsVlogs

    BigDawsVlogs

    17 HAZİRAN 2013
  • macpulenta

    macpulenta

    9 EYLÜL 2006
  • The Amazing Atheist

    The Amazing

    20 Kasım 2006