Как преобразовать из char* в string
От: Аноним  
Дата: 05.04.06 21:36
Оценка:
Как грамоьно преобразовать char* в string?
Re: Как преобразовать из char* в string
От: rg45 СССР  
Дата: 05.04.06 21:46
Оценка:
" Аноним " <0@users.rsdn.ru> сообщил/сообщила в новостях следующее: news:1824777@news.rsdn.ru...
> Как грамоьно преобразовать char* в string?

При условии, что входная строка заканчивается нулевым символом, по ней можно сконструировать как новый объект std::string, так и присвоить это значение уже существующему объекту:
std::string text("first");
text = "second";
Posted via RSDN NNTP Server 2.0
--
Не можешь достичь желаемого — пожелай достигнутого.
Re[2]: Как преобразовать из char* в string
От: DigitalGuru Россия http://svetlyak.ru
Дата: 06.04.06 05:52
Оценка:
Здравствуйте, rg45, Вы писали:

R>При условии, что входная строка заканчивается нулевым символом, по ней можно сконструировать как новый объект std::string, так и присвоить это значение уже существующему объекту:

R>
R>std::string text("first");
R>text = "second";
R>


А при условии, что не заканчивается — так:
char data[] = {'f','i','r','s','t'};
std::string text( data, sizeof(data) );
Re: Как преобразовать из char* в string
От: BitField Украина http://lazy-bitfield.blogspot.com
Дата: 06.04.06 06:59
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Как грамоьно преобразовать char* в string?


Кроме всего вышенаписанного, не стоит забывать, что (char*) NULL в std::string передавать нельзя..

char * s = get_bla();
std::string str(s ? s : "");
//free(s); // если это необходимо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.