Język C++
data
[metoda] Zwraca wskaźnik na łańcuch znaków, który nie jest zakończony znakiem terminalnym '\0'.Składnia
#include <string>
namespace std
{
class string
{
public:
const char * data() const;
};
}
Zwracana wartość
Zwraca wskaźnik na tablicę znaków. Zwracany łańcuch znaków
nie jest zakończony znakiem terminalnym '\0'.
Opis szczegółowy
Metoda
data zwraca wskaźnik na tablicę znaków, która
nie jest zakończona znakiem terminalnym '\0'. Zwrócony wskaźnik nie powinien być modyfikowany, ponieważ jego właścicielem jest obiekt
std::string, który ma ograniczony czas życia oraz zarządza zwróconym wskaźnikiem. Poprawność adresu wskaźnika jest gwarantowana od chwili wywołania omawianej metody do czasu wywołania metody modyfikującej.
Przykład
#include <cstdio>
#include <string>
#include <string.h>
int main()
{
std::string sTekst = "cpp0x.pl";
char sLancuchZnakow[ 100 ];
::memcpy( sLancuchZnakow, sTekst.data(), sTekst.size() );
sLancuchZnakow[ sTekst.size() ] = '\0';
::printf( "Lancuch znakow: \"%s\"\n", sLancuchZnakow );
return 0;
}
Standardowe wyjście programu:
Lancuch znakow: "cpp0x.pl"
Zagadnienia powiązane
assign | przypisuje nową wartość dla łańcuch znaków (metoda) |
---|
c_str | Zwraca łańcuch znaków tylko do odczytu w standardzie języka C. (metoda) |
---|
copy | [OK/TODO]Kopiuje zawartość stringa do tablicy. (metoda) |
---|
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.