Libreria di stringhe C ++ - c_str

Descrizione

Restituisce un puntatore a un array che contiene una sequenza di caratteri con terminazione null (cioè una stringa C) che rappresenta il valore corrente dell'oggetto stringa.

Dichiarazione

Di seguito è riportata la dichiarazione per std :: string :: c_str.

const char* c_str() const;

C ++ 11

const char* c_str() const noexcept;

C ++ 14

const char* c_str() const noexcept;

Parametri

nessuna

Valore di ritorno

Restituisce un puntatore a un array che contiene una sequenza di caratteri con terminazione null (cioè una stringa C) che rappresenta il valore corrente dell'oggetto stringa.

Eccezioni

se viene generata un'eccezione, non ci sono modifiche nella stringa.

Esempio

Nell'esempio seguente per std :: string :: c_str.

#include <iostream>
#include <cstring>
#include <string>

int main () {
   std::string str ("Please divide this sentance into parts");

   char * cstr = new char [str.length()+1];
   std::strcpy (cstr, str.c_str());

   char * p = std::strtok (cstr," ");
   while (p!=0) {
      std::cout << p << '\n';
      p = std::strtok(NULL," ");
   }

   delete[] cstr;
   return 0;
}

L'output di esempio dovrebbe essere così:

Please
divide
this
sentance
into
parts