Модераторы: feodorv
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Cannot convert 'UnicodeString' to 'const char *', надо задать ip из TEdit или типо того 
:(
    Опции темы
lips
Дата 21.10.2012, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 21.10.2012

Репутация: нет
Всего: нет



Делаю локальную сеть(winsock), столкнулся с проблемой:
Код

addr.sin_addr.s_addr=inet_addr("192.168.0.3");

Как сделать чтобы ip мог задать пользователь вручную к примеру в Edit1->Text или каким то другим способом.
На вот такое:
Код

addr.sin_addr.s_addr=inet_addr(Edit1->Text);

пишет вот такое:
[BCC32 Error] Unit1.cpp(1814): E2034 Cannot convert 'UnicodeString' to 'const char *'
[BCC32 Error] Unit1.cpp(1814): E2342 Type mismatch in parameter 'cp' (wanted 'const char *', got 'UnicodeString')

Господа программисты, подскажите пожалуйста!
Спасибо заранее!
PM MAIL ICQ   Вверх
Dem_max
Дата 21.10.2012, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: нет
Всего: 39



inet_addr(Edit1->Text.t_str());


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
lips
Дата 21.10.2012, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 21.10.2012

Репутация: нет
Всего: нет



del
не работает так:
[BCC32 Error] Unit1.cpp(1815): E2034 Cannot convert 'wchar_t *' to 'const char *'
[BCC32 Error] Unit1.cpp(1815): E2342 Type mismatch in parameter 'cp' (wanted 'const char *', got 'wchar_t *')

Это сообщение отредактировал(а) lips - 21.10.2012, 14:18
PM MAIL ICQ   Вверх
lips
Дата 21.10.2012, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 21.10.2012

Репутация: нет
Всего: нет



по сути проблема простая, надо преобразовать из UnicodeString в char
как это сделать?)

нашёл всётаки сам решение, но всёрано спасибо!
Код

 wchar_t *wc = Edit1->Text.t_str();
 char c[20];
 wcstombs(c, wc, wcslen(wc)+1);




Это сообщение отредактировал(а) lips - 21.10.2012, 14:53
PM MAIL ICQ   Вверх
Dem_max
Дата 21.10.2012, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: нет
Всего: 39



Если юникодный проект 
то можно так
Код

AnsiString str;
str = Edit1->Text;
inet_addr(str.c_str());



--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0575 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.