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