Страницы

Поиск по вопросам

воскресенье, 29 марта 2020 г.

Как преобразовать string в char?

#cpp #строки #char #преобразование


Есть произвольная строка не больше 25 символов. Например "wo1fram"
Как преобразовать ее в массив char[255]?
Чтобы потом с char можно было работать как с полноценным массивом символов, оканчивающимся
нуль-символом.
    


Ответы

Ответ 1



Тут, видите ли, есть два решения. Одно - если вам надо только читать эту строку, или там, поменять в ней пару символов - но не менять ее размер (так что всякие strcpy отменяются) - то можно воспользоваться функциями c_str() и data(). Очень рекомендую внимательно почитать описания, а главное - ограничения, накладываемые этими функциями. И другое - если нужно работать с ней как со строкой в стиле С со всеми возможностями - то просто скопируйте ее в массив, типа char buf[255]; strcpy(buf,s.c_str()); или char * buf = strdup(s); Примерно так.

Комментариев нет:

Отправить комментарий