Как часть моего кода, мне нужно вывести в текстовом поле строку из 8 символов, которые были зашифрованы. Поэтому мне нужно преобразовать массив из 8 символов в систему String^
. Я пробовал следующее:Преобразование char-array в System :: String^
char result[8];
for(int i=0; i<8; i++)
{
result[i] = (char)DecimalCypher[7-i];
}
textBox3->Text = gcnew String(result);
Однако текстовое поле показывает более 8 символов. 8 символов будут меняться в зависимости от ввода, а оставшиеся останутся как есть. Пример, Если мой вход
andrew12
, выход в TextBox является
Т) W + "Зиз BVI Pe
Однако если мой ввод
andrew33, выход будет: A1-1` + Ta BVI pé
Последние 6 символов одни и те же .. но здесь не должно быть в первую очередь. Это первые 8 символов, которые имеют значение!
Любая идея, почему это происходит?
Вы должны мобилизовывать неуправляемую строку в управляемой строку. https://msdn.microsoft.com/en-us/library/bb384865.aspx – lcs
изменить 'char result [8];' to 'char result [9] = {0};' –
Вы должны аннулировать все c- стиль строки. – user4581301