Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Переставить местами слова в файле |
Автор: iPlay 18.4.2008, 19:31 |
Помогите плиз. Как сделать так чтобы в считанной из файла строке менялось местами 1е и 2е слово 3е и 4е ну и т.д.?? |
Автор: Earnest 18.4.2008, 19:34 |
Разбить строку на слова, поместить их в массив, поменять, снова собрать строку. |
Автор: Rififi 18.4.2008, 20:05 | ||
iPlay, с использованием STL - так:
|
Автор: iPlay 18.4.2008, 20:23 |
За код конечно спасибо. Но я буду в UNIX программу встраивать перестановку. Щас пробую сам сделать. |
Автор: Rififi 18.4.2008, 20:25 | ||
iPlay,
да хоть в X-System LW-42/G |
Автор: iPlay 18.4.2008, 21:34 |
а STL разве под UNIX будет работать? Добавлено через 2 минуты и 51 секунду Я просто с STL не работал как этот код применить правильно в UNIX программе? |
Автор: warmonger_ 18.4.2008, 23:09 |
да хм... попробуй просто его написать |
Автор: vinter 18.4.2008, 23:32 |
iPlay, чистый С++ платформонезависим, а STL это его часть. |
Автор: warmonger_ 18.4.2008, 23:38 |
сильно громко сказано... ![]() |
Автор: iPlay 19.4.2008, 08:29 |
Спасибо, просветили насчет STL, незнал .А можно в кратце как работает тот код а то не все понятно. |
Автор: Rififi 19.4.2008, 12:47 |
iPlay, код - практически дословная реализация того, что предложил Earnest, алгоритм copy разбивает строку на слова, используя пробельные символы в качестве разделителя. чтобы читать из стрима, применяется специальный адаптер "псевдо-итератора". цикл for - собственно сама перестановка элементов. далее снова применяется алгоритм copy, только уже для того, чтобы собрать строку из перестановленных слов. ostream_iterator принимает на вход ссылку на поток для сохранения результата и разделитель. потом возвращается собранная строка. всё. |
Автор: iPlay 22.4.2008, 17:24 | ||
И последний вопрос уже в самом применнении чёто я не шарю как вызвать ту ф-цию что на STL написана вот кусок кода что я пишу логика простая читаем из канала "client-server" в буфер buff :
|
Автор: Alek86 22.4.2008, 17:36 |
в самый раз ты бы видел на форумах споры насчет работы на C++ на платформах, где у разных типов указатели разного размера ![]() |
Автор: iPlay 22.4.2008, 17:41 |
Это да ![]() |