DamnCliffracers
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Всем привет. Пишу программу в Visual C++ 2015, возникла проблема. Имеется функция, конвертирующая массив символов unsigned char в Base64. Все работает нормально, если задавать массив прямо в коде таким вот образом: unsigned char CA[] = { "Бла-бла" }; Гораздо веселее, если попытаться скормить ей текст из textBox->Text. В этом случае, чтобы все работало правильно, нужно строку System::String^ преобразовать в массив unsigned char. Я пробовал это делать двумя функциями: Marshal::StringToHGlobalAnsi marshal_context::marshal_as Если смотреть по кодам полученных в результате символов, то все вроде бы нормально. Но вот функция, конвертирующая символы в Base64, обрабатывает их почему-то неправильно. Значит, все же есть какая-то разница между тем, что они дают на выходе, и тем, что попадает в массив CA, объявленный выше. В чем она может заключаться и как это можно обойти? |