Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
3 / 3 / 0
Регистрация: 24.01.2017
Сообщений: 137
1

Gcc преобразование string - char[]

28.07.2017, 19:31. Просмотров 1254. Ответов 4
Метки нет (Все метки)

Как преобразовать (string str) в (char str[]) ?
***
проблема в том, что надо передать string str, но функция
принимает только char[]

прототип функции
==============
<cstring>
function strtok
char * strtok ( char * str, const char * delimiters );
=============
сама программа :
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <stdio.h>
#include <string.h>
#include <cstring>
#include <string>
 
//#include <conio.h> // _getch()
//#include <iostream> //cout,cin
//#include <stdio.h> // printf(), getchar(),putchar(),
//#include <fstream> //
//using namespace std;
 
void print(char[]);
 
int main ()
{
 
 //string str = "this 123.45  89,23 00   ";
  char str[] ="- This, 123.55- ,  string.";
 
  print(str);
  return 0;
}
 
void print(char str[]){
  char *ch;
  ch = strtok (str, " ,.-");
  while (ch != NULL)
  {
    printf ("%s\n", ch);
    ch = strtok (NULL, " ,.-");
  }
 
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.07.2017, 19:31
Ответы с готовыми решениями:

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

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

Преобразование string to char
В общем никак не получается перегнать из строки в чар. Что надо: Имеется StringGrid и структура....

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

4
330 / 282 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
28.07.2017, 19:35 2
http://en.cppreference.com/w/c... tring/data
1
Любитель чаепитий
3494 / 1609 / 499
Регистрация: 24.08.2014
Сообщений: 5,523
Записей в блоге: 1
28.07.2017, 19:49 3
Лучший ответ Сообщение было отмечено Rukov как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdio.h>
#include <string.h>
#include <cstring>
#include <string>
 
void print(char[]);
 
int main ()
{
 
  std::string str = "this 123.45  89,23 00   ";
  //char str[] ="- This, 123.55- ,  string.";
  char * s = new char[str.size() + 1];
  strcpy(s, str.c_str());
 
  print(s);
  return 0;
}
 
void print(char str[]){
  char *ch;
  ch = strtok (str, " ,.-");
  while (ch != NULL)
  {
    printf ("%s\n", ch);
    ch = strtok (NULL, " ,.-");
  }
 
}
1
3 / 3 / 0
Регистрация: 24.01.2017
Сообщений: 137
28.07.2017, 19:59  [ТС] 4
то что доктор прописал...
спасибо!
0
зомбяк
1417 / 1081 / 310
Регистрация: 14.05.2017
Сообщений: 3,538
28.07.2017, 21:54 5
GbaLog-, + delete[] s;
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.07.2017, 21:54

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

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

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

Преобразование std::string в char*
Несомненно, работать с определенным в STL классом string работать в разы приятнее, чем с обычным...

Преобразование из string в массив char
Помогите присвоить символьные значения компоненты textBox в массив char чтобы потом можно было...


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

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

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