Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2015, 19:10   #1
Вероника99
Форумчанин
 
Регистрация: 15.12.2013
Сообщений: 414
По умолчанию String в char

Здравствуйте. Нашла код перестановки без повторений в интернете. Нужна программа без использования шаблонов,но что-то не получается преобразовать string в char.Можете подсказать что не так
Код:

#include <iostream>
#include <string>
using namespace std;
const int max_length = 8;
char word[max_length];
bool used[max_length];
int length;
char *current_word; ///эта переменная была string

void recursion(int current_length)
{
	if(current_length == length)
	{
		cout << current_word<< endl;
		return;
	}
	for(int i = 1; i<= length; i++)
		if(used[i] == false)
		{
			current_word+=word[i];
			used[i]=true;
			recursion(current_length+1);
		//	current_word.erase(current_word.end()-1,current_word.end());
			used[i]=false;
		}
}

int main()
{
	cin >> length;
	for(int i = 1; i<=length; i++) 
		cin >> word[i];
	for(int i = 1; i<=length; i++) 
	cout<<word[i];
	recursion(0);
	return 0;
}
Вероника99 вне форума Ответить с цитированием
Старый 26.05.2015, 19:19   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Указатель есть - память не выделили.
Строки чар не складываются +
Вас не смущает, что потоки такие же шаблоны, как и стринг
p51x вне форума Ответить с цитированием
Старый 27.05.2015, 14:57   #3
Вероника99
Форумчанин
 
Регистрация: 15.12.2013
Сообщений: 414
По умолчанию

А какая есть альтернатива current_word+=word[i];? Думала на счет strcpy, но второй параметр должен быть константой, а word[i] я никак не могу сделать константой.
Вероника99 вне форума Ответить с цитированием
Старый 27.05.2015, 16:08   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Цитата:
но второй параметр должен быть константой
Не должен, тут указывается, что строка не будет изменяться в функии.

Цитата:
Думала на счет strcpy,
Ну вам же не копировать строки надо, а соединять. Думайте дальше в сторону strcat и ее аналогов.
p51x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
char[] to string Shahzod Общие вопросы C/C++ 1 23.12.2013 11:03
new string из char[] JOFRIF Общие вопросы по Java, Java SE, Kotlin 2 21.05.2013 08:21
string-char-wchar_t-char-string чето потерял magog7 Общие вопросы C/C++ 0 08.08.2011 20:21
string vs. char tools Общие вопросы C/C++ 9 22.12.2010 01:49