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

  • kylediablo

    kylediablo

    8 Ocak 2007
  • TheDailyTechDose

    TheDailyTech

    15 EKİM 2012
  • Utah Valley Online

    Utah Valley

    9 AĞUSTOS 2010