Aktywne Wpisy

Zmorka +6
potraficie odczuwać empatię wobec narkomanów?

#olx ehhh, w każdym ogłoszeniu wyraźnie napisałem, że tylko odbiór osobisty. Gość chce z 900zł zejść do 500zł XD ( ͡° ʖ̯ ͡°)
źródło: 1000010152
PobierzSkopiuj link
Skopiuj link

źródło: 1000010152
PobierzRegulamin
Reklama
Kontakt
O nas
FAQ
Osiągnięcia
Ranking
Czy char* i string to z praktycznego punktu widzenia to samo?
std::stringto nie, nie jest to osobny byt, to dokładnie jest kontener STLa.@VanQator: Generalnie
std::stringod char* różni się sposobem użycia. Zazwyczaj wchar*przechowuje się ciągi znaków zakończone zerem, które nie potrzebują rozmiaru, natomiaststd::stringpotrafi przechowywać zera.'\n'to koniec lini i jego wyświetlenie polega na przejściu do nowej linijki i wyświetlenie reszty od początku linii.char* nie przechowuje znaków tylko wskaźnik na tablicę, wiec do samej tablicy możesz zapisać wszystko. Jednak nie masz żadnej informacji o ilości miejsca zaalokowanego które możesz wykorzystać. Dlatego większość funkcji przyjmująca samo char* przyjmuje że ciąg znaków kończy się znakiem
'\0'.2. Znak końca lini '\n' nie ma nic wspólnego z null terminator w C-style strings. Znak końca lini jest implenetowany róznie w zależności od OS. Dla linuxa będzie to CRLF a więc para 0xDA w ASCII, dla Windowsa samo LF. Null terminator to po prosty 0x0.
3. char* podczas wyświetlania nic nie terminuje bo to zwykły typ wskaźnikowy.