Форум программистов, компьютерный форум CyberForum.ru

Массив строк преобразовать в строку - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Книга по WinApi с упражнениями http://www.cyberforum.ru/cpp-beginners/thread935079.html
Всем привет. Сейчас дочитываю книгу "Win32 API. Эффективная разработка приложений. Щупак Ю. А." Проблема в том, что там нет упражнений, подскажите пожалуйста хорошую книгу, и с упражнениями.
C++ Преобразование типов в наследниках Закомментированная строка не работает. class A { }; class B : public A { public: //B(C & varC) {} }; class C : public A { public: http://www.cyberforum.ru/cpp-beginners/thread935076.html
присвоение значения C++
Здравствуйте! можно ли каким-нибудь образом присвоить значению int значение char? К примеру: у меня есть массив типа int, нужно найти элемент равный 5 и заменить его на пробел!!! Можно ли сделать это без присваивания массиву типа char?
Книга Страуструп Программирование Принципы и практика C++
У кого есть книга Страуструп Программирование Принципы и практика? сбросьте пожалуйста 333 страницу из книги
C++ boost и Multithreading http://www.cyberforum.ru/cpp-beginners/thread935066.html
Подскажите, пожалуйста, как создать сервер, который принимает запросы от клиентов и отправляет каждый из них в отдельный thread. Вопрос в том, как создавать неопределенное количество потоков? есть идея создать скажем vector<thread*> и потом с помощью push_back(new thread) закидывать их в вектор. но возникает вопрос как им потом делать join(), точнее когда? сервер работает без остановки.
C++ замена элемента матрицы на пробел Здравствуйте! Как можно заменить элемент матрицы на пробел? подробнее

Показать сообщение отдельно
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11810 / 6789 / 767
Регистрация: 27.09.2012
Сообщений: 16,840
Записей в блоге: 2
Завершенные тесты: 1
08.08.2013, 11:55     Массив строк преобразовать в строку
Как вариант (надо бы проверить на работоспособность):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <cstring>
 
 
int main ( ) {
   const int size = 5 ;
   const char * arr [ size ] = { "string1" , "string2" , "string3" , "string4" , "string5" } ;
   int resultStringLength = 0 ;
   for ( int i = 0 ; i < size ; ++i ) { //Считаем длину всех строк
      resultStringLength += strlen ( arr [ i ] ) ; 
   }
   resultStringLength += (size-1) * 2 ; //Для разделителей ( запятая + пробел )
   char * resultString = new char [ resultStringLength + 1 ] ; // Выделяем память с учетом завершающего нуля
   resultString [ 0 ] = '\0' ; // "обнуляем" строку
   if ( size > 0 ) {
      strcat ( resultString , arr [ 0 ] ) ; //Добавляем первое слово
      for ( int i = 1 ; i < size ; ++i ) {
         strcat ( resultString , ", " ) ; // Добавляем запятую
         strcat ( resultString , arr [ i ] ) ; //Добавляем строку
      }
   }
   std::cout << resultString << std::endl ;
}
Tulosba, лишняя запятая в конце
 
Текущее время: 21:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru