Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

SaDFromSpb



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

#include <iostream>
using namespace std;
 
int main(int argc, char* argv[]) {
 
  char** allstrings;
  int allstr_size = 0;
  char* temp_str = new char[61]; // one else for '\0' character
  int tempstr_size = 0;
  char ch;
 
  // making array
  cout << "Enter your strings:" << endl;
  do {    
    cin.get(ch);
    if (ch=='\n' || ch==0xe || tempstr_size == 60) {
      if (strlen(temp_str) > 0) {                           // we no need empty strings
        temp_str[tempstr_size++] = '\0';                    // finalizing current string
        char** temp_allstrs = new char*[++allstr_size];     // creating temporaly array of strings
        memcpy(temp_allstrs, allstrings, (allstr_size-1)*sizeof(char*)); // and copying to it from old
        delete[] allstrings;                                   // deleting old array of strings
        temp_allstrs[allstr_size-1] = new char[tempstr_size];  // memory alloc for new string
        strcpy(temp_allstrs[allstr_size-1], temp_str);       // copying current string to temp array
        delete[] temp_str;                                   // free memory for next string
        tempstr_size = 0;                                      
        allstrings = temp_allstrs;                            
      }
    } else {
      temp_str[tempstr_size++] = ch;                        // adding readed char
    }
  } while (ch != 0xe);    
 
  // printing array
  cout << "\nEntered strings are:" << endl;
  for (int i=0; i<allstr_size; i++) {
    cout << allstrings[i] << endl;
    delete[] allstrings[i];
  }
   
  return 0;
}

Всего записей: 209 | Зарегистр. 22-06-2004 | Отправлено: 17:06 21-01-2006 | Исправлено: SaDFromSpb, 17:26 21-01-2006
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru