Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
lost7070
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 31
#1

Как перевести String^ в char[255] - C++

17.10.2012, 14:00. Просмотров 827. Ответов 6
Метки нет (Все метки)

Доброго времени суток.
Нужно перевести String в char.
Делаю следующее:
C++
1
2
3
4
5
6
7
String^ func=Convert::ToString(textBox1->Text);
const int r=255;
сhar func_ch[r];
for(int i=0;i<func->Length;i++)
{
    func_ch[i] = func[i];
}
Переводит нормально с одной проблемой: в конце ещё добавляется 1 или 2 лишних символа, которые мне не нужны, поскажите пожалуйста, как это исправить или каким другим способом можно решить пообную проблему.
Заранее благодарен всем отозвавшимся.
Ниже скрин отладчика, где видны лишние символы.
Миниатюры
Как перевести String^ в char[255]  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6548 / 3968 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.10.2012, 14:02     Как перевести String^ в char[255] #2
Конвертация строк: System::String в массив char/wchar_t, std::string и обратно
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12534 / 7096 / 797
Регистрация: 27.09.2012
Сообщений: 17,509
Записей в блоге: 2
Завершенные тесты: 1
17.10.2012, 14:05     Как перевести String^ в char[255] #3
Обнулите массив func_ch перед использованием, либо после цикла добавьте
C++
1
func_ch[func->Length] = 0;
MrCold
852 / 750 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
17.10.2012, 14:07     Как перевести String^ в char[255] #4
Нуль-терминант добавьте
C++
1
2
3
4
5
for(int i=0;i<func->Length;i++)
{
    func_ch[i] = func[i];
}
func_ch[i] = '\0';
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12534 / 7096 / 797
Регистрация: 27.09.2012
Сообщений: 17,509
Записей в блоге: 2
Завершенные тесты: 1
17.10.2012, 14:08     Как перевести String^ в char[255] #5
Цитата Сообщение от MrCold Посмотреть сообщение
Нуль-терминант добавьте
C++
1
2
3
4
5
for(int i=0;i<func->Length;i++)
{
    func_ch[i] = func[i];
}
func_ch[i] = '\0';
i локальна для цикла в данном случае
MrCold
852 / 750 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
17.10.2012, 14:10     Как перевести String^ в char[255] #6
Цитата Сообщение от Croessmah Посмотреть сообщение
i локальна для цикла в данном случае
разберется ....
Croessmah
17.10.2012, 14:10     Как перевести String^ в char[255]
  #7

Не по теме:

Цитата Сообщение от MrCold Посмотреть сообщение
разберется ....
А куда ему деваться =)))

Yandex
Объявления
17.10.2012, 14:10     Как перевести String^ в char[255]
Ответ Создать тему
Опции темы

Текущее время: 11:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru