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

  • Blendtec

    Blendtec

    30 EKİM 2006
  • fast2hell

    fast2hell

    16 AĞUSTOS 2006
  • Flash CS6 Video Tutorials for Beginners (Actionscript 3 Gaming)

    Flash CS6 Vi

    14 EYLÜL 2012