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

  • Liberator

    Liberator

    14 EYLÜL 2007
  • nemoking of kinges

    nemoking of

    4 EYLÜL 2009
  • Showtime

    Showtime

    21 HAZİRAN 2006