SORU
8 EYLÜL 2011, PERŞEMBE


::std*karakter string

Bir dönüştürmek istiyorum::standart bir dizebir içine* charyachar[]veri türü.

std::string str = "string";
char* chr = str;

Sonuçları:< “hata:‘:: std string’‘’...”. char dönüştürmek ^güçlü .

Yöntem yapmak için kullanılabilir bu ne var?

CEVAP
8 EYLÜL 2011, PERŞEMBE


Otomatik olarak (çok şükür) dönüşüm olmayacaktır. Yöntemi c_str() C dize sürümü almak için kullanmak zorunda kalacaksın.

std::string str = "string";
const char *cstr = str.c_str();

const char *; C-stil dize c_str() tarafından döndürülen değiştirmek için izin verilmez bir döndüren unutmayın. Eğer bu işlemi yapmak istiyorsanız ilk kopya gerekecek:

std::string str = "string";
char *cstr = new char[str.length()   1];
strcpy(cstr, str.c_str());
// do stuff
delete [] cstr;

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Caramthros

    Caramthros

    10 AĞUSTOS 2007
  • fast2hell

    fast2hell

    16 AĞUSTOS 2006
  • Leigh Momii

    Leigh Momii

    10 Mayıs 2006