Как изменить строковый массив на беззнаковый char*?

У меня есть два массива:

array<String^>^ lub=gcnew array<String^>(24);
const unsigned char *lb[24];

Я хочу скопировать значения из первого массива, lub в lb; Как мне это сделать? Какие методы преобразования мне нужно использовать?


person user3828865    schedule 25.07.2014    source источник
comment
возможный дубликат Необходимо преобразовать String^ в char *   -  person Leo Chapiro    schedule 25.07.2014
comment
Отметьте std::string::c_str() и используйте std::strcpy для копирования строк.   -  person a_guest    schedule 25.07.2014
comment
Строка содержит символы Юникода. Что вы хотите, чтобы ваш unsigned char * держал?; предположительно последовательность символов, заканчивающаяся 0, но какой набор символов и какая кодировка? Unicode/UTF-8, один из наборов символов ANSI или система по умолчанию будут хорошими ответами. Как выделяется память для каждой строки, кому она принадлежит, каков ее срок службы и используется ли она совместно?   -  person Tom Blodget    schedule 27.07.2014
comment
Привет, поэтому я хочу, чтобы мой беззнаковый символ * содержал UTF-16, например 0xEF. Так что, если бы вы могли помочь мне с этим, я был бы очень признателен.   -  person user3828865    schedule 28.07.2014
comment
Я работаю с классами .net. Мои строковые значения поступают из текстовых полей, в которых я ввожу шестнадцатеричные значения, например (3f, 4e ..). Я должен преобразовать их в беззнаковый символ, чтобы работать с этими значениями и после вернуть их в текстовые поля. Я надеюсь, что это имеет смысл, что я говорю   -  person user3828865    schedule 28.07.2014
comment
См. мое решение в Необходимо преобразовать String^ в char *. По сути, вы можете использовать sprintf() для преобразования из String^ в char *.   -  person Ionian316    schedule 23.01.2015