Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > VS CLR char в String выводит номера символов


Автор: PascalC 16.4.2009, 20:13
Есть Cur->first_Otvet[100] - массив символов char, подскажите пожалуйста, как вывести его содержимое в подпись к checkbox? (в CLR Visual Studio 2008)

Пробовал так:
Код

int h=0;
while (Cur->first_Otvet[h]!='\0')
{this->checkBox1->Text=this->checkBox1->Text+Cur->first_Otvet[h];
h++;}


Но вместо нужной строки выводит номера символов, например строку "1. 12" отображает как:
"504632505110"

Автор: Anikmar 16.4.2009, 20:20
Я точно не помню как в студии, но по аналогии с билдером чую, что как-то так:
this->checkBox1->Text = Cur->first_Otvet;

Автор: PascalC 16.4.2009, 20:26
Цитата(Anikmar @  16.4.2009,  20:20 Найти цитируемый пост)
Я точно не помню как в студии, но по аналогии с билдером чую, что как-то так:
this->checkBox1->Text = Cur->first_Otvet; 

Если бы все было так просто :(
К сожалению в билдере используется другая VCL а не CLR

Автор: Anikmar 16.4.2009, 20:31
Цитата(PascalC @  16.4.2009,  20:26 Найти цитируемый пост)
Если бы все было так просто :(
К сожалению в билдере используется другая VCL а не CLR 

Уверен, что также просто.

Какого типа checkBox1->Text?

Автор: PascalC 16.4.2009, 20:34
Цитата(Anikmar @  16.4.2009,  20:31 Найти цитируемый пост)
Какого типа checkBox1->Text? 

System::String

Автор: Anikmar 16.4.2009, 20:47
Попробуйте
this->checkBox1->Text = System::String(Cur->first_Otvet); 

Автор: PascalC 16.4.2009, 21:05
Цитата(Anikmar @  16.4.2009,  20:47 Найти цитируемый пост)
this->checkBox1->Text = System::String(Cur->first_Otvet);  

Нет, вылазит еррор:
Код

void System::Windows::Forms::Control::Text::set(System::String ^)' : cannot convert parameter 1 from 'System::String' to 'System::String ^'

Автор: Anikmar 16.4.2009, 21:09
Цитата(PascalC @  16.4.2009,  21:05 Найти цитируемый пост)
Нет, вылазит еррор:
Без подсветки
1:
void System::Windows::Forms::Control::Text::set(System::String ^)' : cannot convert parameter 1 from 'System::String' to 'System::String ^'

Блин, вы на каком языке пишете? Это же не С++!

Автор: mrbrooks 16.4.2009, 21:22
Цитата(Anikmar @  16.4.2009,  21:09 Найти цитируемый пост)
Блин, вы на каком языке пишете? Это же не С++! 

Совершенно верно. Автор тянет с собой dot.NET.


PascalC, камрад не в тот раздел запостил. К С/С++ данный вопрос имеет очень отдаленное отношение. 

Автор: mes 16.4.2009, 21:22
Цитата(PascalC @  16.4.2009,  19:13 Найти цитируемый пост)
(в CLR Visual Studio 2008)

Вам сюда : http://forum.vingrad.ru/forum/dotNET-forum.html

Автор: PascalC 16.4.2009, 21:23
Цитата(Anikmar @  16.4.2009,  21:09 Найти цитируемый пост)
Блин, вы на каком языке пишете? Это же не С++! 

Самый что ни на есть C++
user posted image

Добавлено через 1 минуту и 58 секунд
Сори, перенесите плиз в тот раздел, чтоб дубли не плодить

Автор: PascalC 16.4.2009, 23:24
а в .net никто не разбирается? :(
Модераторы, перенесите плиз туда тогда, раз это не с++, у меня к сожалению прав не хватает чтоб самому перенести

Автор: PascalC 17.4.2009, 08:42
Здравствуйте! 
Есть Cur->first_Otvet[100] - массив символов char, подскажите пожалуйста, как вывести его содержимое в подпись к checkbox? (в CLR Visual Studio 2008)

Пробовал так:
Код

int h=0;
while (Cur->first_Otvet[h]!='\0')
{this->checkBox1->Text=this->checkBox1->Text+Cur->first_Otvet[h];
h++;}


Но вместо нужной строки выводит номера символов, например строку "1. 12" отображает как:
"504632505110"

Изначально создал тему не в том разделе:
http://forum.vingrad.ru/forum/act-ST/f-471/t-255830.html

Автор: Partizan 17.4.2009, 10:17
PascalC, 

Код

int h=0;
while (Cur->first_Otvet[h]!='\0')
{
char symbol = this->checkBox1->Text+Cur->first_Otvet[h];
String^ ch = gcnew String(&symbol, 0, 1);
this->checkBox1->Text += ch;
h++;
}

Автор: PascalC 17.4.2009, 10:50
Цитата(Partizan @  17.4.2009,  10:17 Найти цитируемый пост)
PascalC, 

Код

int h=0;
while (Cur->first_Otvet[h]!='\0')
{
char symbol = this->checkBox1->Text+Cur->first_Otvet[h];
String^ ch = gcnew String(&symbol, 0, 1);
this->checkBox1->Text += ch;
h++;
}



Спасибо огромное!
Заработало. Правда немного не так надо было:
Код

int h=0;
while (Cur->first_Otvet[h]!='\0')
{
char symbol = Cur->first_Otvet[h];
String^ ch = gcnew String(&symbol, 0, 1);
this->checkBox1->Text += ch;
h++;
}

Автор: PascalC 17.4.2009, 10:53
решено в теме: http://forum.vingrad.ru/forum/topic-255874.html

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)