Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.96
iPanG
0 / 0 / 0
Регистрация: 30.11.2010
Сообщений: 31
#1

Преобразование string to char - C++

11.05.2011, 22:17. Просмотров 3484. Ответов 7
Метки нет (Все метки)

В общем никак не получается перегнать из строки в чар.
Что надо:
Имеется StringGrid и структура.
Обьявлена структура как:
C++
1
2
3
4
struct Cities
{
char city[20],country[10];
};
Далее
C++
1
Cities   *s=new Cities[10];
Теперь из стринггрида данные нужно передать в структуру(char).
Подобие
C++
1
strcpy(s[i].city,Temp.c_str());
не хочет работать.

Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2011, 22:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Преобразование string to char (C++):

Преобразование string в char* - C++
int fun(char*); int main() { int a; string strok; strok="abc"; strok+="cde"; ...

Преобразование string в char - C++
как преобразовать тип string в char?

Преобразование String^ в char* - C++
Здравствуйте. У меня есть строка кода, принимающая массив символов char *ex = gets_s(buff, sizeof(buff)); Сейчас я добавляю...

Преобразование char* в string - C++
Доброго времени суток. Если я динамически выделил память для массива типа char, то как его можно преобразовать в string?

Преобразование string в char* - C++
функция c_str переделывает стринг строку в const char* , а мне надо чтобы было без const то есть существует ли функция которая переделает...

Преобразование string в char* - C++
char* string_to_char(string str){ int size = str.size(); char *ch = new char; for(int i = 0; i < size; i++) { ch = str; ...

7
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
11.05.2011, 22:19 #2
Что означает "не хочет работать"?
0
iPanG
0 / 0 / 0
Регистрация: 30.11.2010
Сообщений: 31
11.05.2011, 22:20  [ТС] #3
C++
1
2
3
4
5
6
[BCC32 Error] Unit1.cpp(98): E2034 Cannot convert 'wchar_t *' to 'const char *'
  Full parser context
    Unit1.cpp(90): parsing: void _fastcall TForm1::Button2Click(TObject *)
[BCC32 Error] Unit1.cpp(98): E2342 Type mismatch in parameter '__src' (wanted 'const char *', got 'wchar_t *')
  Full parser context
    Unit1.cpp(90): parsing: void _fastcall TForm1::Button2Click(TObject *)
0
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
11.05.2011, 22:26 #4
Не работает по той причине, что у вас UnicodeString и char. Либо используйте AnsiString, либо используйте wchar_t* вместо char*. Либо если настройки не изменены, можно пользоваться методом t_str() вместо c_str().
1
iPanG
0 / 0 / 0
Регистрация: 30.11.2010
Сообщений: 31
11.05.2011, 22:29  [ТС] #5
тогда очередной вопрос. как переконвертировать обратно?) (char to string)
ps: с t_str() сработало, спасибо огромное
0
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
11.05.2011, 22:33 #6
Цитата Сообщение от iPanG Посмотреть сообщение
как переконвертировать обратно?) (char to string)
Просто присвоить через =.
0
iPanG
0 / 0 / 0
Регистрация: 30.11.2010
Сообщений: 31
11.05.2011, 22:39  [ТС] #7
через =. не присваивает.
C++
1
strcpy(StringGrid2->Cells[0][i+1].t_str(),s[i].country);
Так выполняется, но грид в итоге пуст
0
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
11.05.2011, 22:41 #8
У меня в 2010 работает через присваивание.
C++
1
StringGrid2->Cells[0][i+1] = s[i].country;
Можно попробовать
C++
1
StringGrid2->Cells[0][i+1] = AnsiString(s[i].country);
1
11.05.2011, 22:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2011, 22:41
Привет! Вот еще темы с ответами:

Преобразование из string в массив char - C++
Помогите присвоить символьные значения компоненты textBox в массив char чтобы потом можно было использовать его как параметр функции при её...

String в char. Не получается преобразование - C++
Задание: 1.Получить имя как параметр командной строки(через аргументы функции main) На экране: "Привет, Имя" 2.Есть функция cat().Должны...

Преобразование Char в System::String - C++
Здравствуйте! Я пишу программу по типу монитора системных ресурсов. Название процессора решил взять из реестра. В консоли все прошло...

Преобразование слов из string в тип char внутри цикла - C++
Имеется отрывок из кода: //все необходимые библиотеки подключены ifstream fin; fin.open("input.txt"); char strok; string s;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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