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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Andry36_
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 11
#1

Считать с консоль строку, ранее выведенную - C++

18.05.2013, 20:04. Просмотров 622. Ответов 14
Метки нет (Все метки)

Здравствуйте. Проблема заключается в следующем.
С помощью cout вывожу на экран 8 цифр, например 1. Можно ли считать уже выведенные эти 8 цифр.
Подскажите кто знает?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2013, 20:04     Считать с консоль строку, ранее выведенную
Посмотрите здесь:

C++ Как считать строку?
C++ Считать строку из файла
C++ Считать пустую строку
C++ Считать строку с файла
Считать строку в Visual C++ C++
Считать строку с потока C++
C++ Считать строку из файла
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ded_Vasilij
 Аватар для Ded_Vasilij
231 / 213 / 15
Регистрация: 01.09.2012
Сообщений: 2,103
18.05.2013, 20:25     Считать с консоль строку, ранее выведенную #2
Если Вы считываете строку, то можно попробовать atoi(), а вот насчет стандартного потока вывода -не знаю, не сталкивался
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
18.05.2013, 20:34     Считать с консоль строку, ранее выведенную #3
Andry36_, Нет нельзя они ж у тебя уже хранится будут в переменной, зачем считывать?
Например отак от:
C++
1
2
3
mass[8]={1,1,1,1,1,1,1,1};
for(int i=0;i<8;i++)
   cout <<mass[i];
Зачем тебе считывать назад? У тебя ж в mass хранится значение.
Я думаю фиг что ты считаешь обратно,это ж ведь поток вывода, ты можешь токо считать назад из потока ввода.
Например я не помню функцию, но там есть функция которая обратно закидывает данные в поток ввода cin и можно снова считывать из него.
Andry36_
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 11
18.05.2013, 20:44  [ТС]     Считать с консоль строку, ранее выведенную #4
Наверное я не очень понятно сформулировал задачу..
C++
1
2
for(int i = 0; i<8; i++)
cout << "1";//т.е. в конце цикла уже выведено 11111111 - можно ли как нибудь это считать и записать в строку или       //массив без разницы
Возможно возвратом каретки консоля и как нить её считать, не знаю как сделать... помогите чайнику(

Добавлено через 7 минут
Просто это подзадача другой)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// класс можно создать какой хочешь.
class clas
{
 
public:
    clas()
    {           
    }
 
    
};
 
int main()
{
// ни чего в for менять нельзя
    for(int i=0; i<8; i++)
    {
        clas ob;
    }
 
    
};
подсчитать количество созданных объектов. подразумеваетсяi<любого числа.
вывод в фаил и статические переменные использовать нельзя.
была вот токая идея:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class clas
{
 
public:
    clas()
    {   
            cout << "1";//ну а потом эти 1цы считать с консоля. только как это сделать?(    
    }
 
    
};
 
int main()
{
 
    for(int i=0; i<8; i++)
    {
        clas ob;
    }
 
    
};
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
18.05.2013, 20:53     Считать с консоль строку, ранее выведенную #5
Andry36_, Да я понял, я не уверен но думаю нет. Вообще такое зачем может понадобится? Сразу в переменную сохраняешь и все.

Добавлено через 6 минут
C++
1
2
3
4
5
6
7
8
9
10
int main()
{
 
    for(int i=0; i<8; i++)
    {
        clas ob;
    }
 
    
};
Отут у тебя должен быть один объект и ты его 8 раз инициализируешь, мб нужно как то конструктор в классе создать и сатический член класса?
Andry36_
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 11
18.05.2013, 20:53  [ТС]     Считать с консоль строку, ранее выведенную #6
Что то типо задачки "ломай голову". Спасибо за ответы.
0x10
18.05.2013, 20:55
  #7

Не по теме:

Andry36_, счетчик объектов - три строчки кода. Не надо создавать себе проблемы на ровном месте.

Andry36_
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 11
18.05.2013, 20:59  [ТС]     Считать с консоль строку, ранее выведенную #8
"мб нужно как то конструктор в классе создать и сатический член класса?" - один из вариантов, но им нельзя пользоваться, а так же создавать фаил в конструкторе и записывать туда - тоже нельзя( Есть ещё 2 способа, но увы, я их не знаю( знаю только о их существовании..

Добавлено через 3 минуты
Цитата Сообщение от 0x10 Посмотреть сообщение

Не по теме:

Andry36_, счетчик объектов - три строчки кода. Не надо создавать себе проблемы на ровном месте.

нельзя.
0x10
2442 / 1614 / 235
Регистрация: 24.11.2012
Сообщений: 3,962
18.05.2013, 21:04     Считать с консоль строку, ранее выведенную #9
Какая дурь... Ну глобальную переменную заведите и увеличивайте ее.
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
18.05.2013, 21:11     Считать с консоль строку, ранее выведенную #10
Отак от можно:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using std::cout;
using std::endl;
 
class clas
{
public:
    static int i;
    clas(){i++;}
};
int clas::i=0;
 
int main()
{
    for(int j=0; j<8; j++)
    {
        clas ob;
    }
    cout <<"count_obj= "<<clas::i<<endl;//8
    
    return 0;
};
Andry36_
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 11
18.05.2013, 21:14  [ТС]     Считать с консоль строку, ранее выведенную #11
Цитата Сообщение от 0x10 Посмотреть сообщение
Какая дурь... Ну глобальную переменную заведите и увеличивайте ее.
Согласен, не придумывал, но надо.
Я допер, ща попробу сделать) Все спасибо))
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
18.05.2013, 21:14     Считать с консоль строку, ранее выведенную #12
Andry36_, Можно еще для класса clas перегрузить оператор cout (operator<<) и создать глобальную переменную и увеличивать ее.
Andry36_
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 11
18.05.2013, 21:16  [ТС]     Считать с консоль строку, ранее выведенную #13
Цитата Сообщение от ninja2 Посмотреть сообщение
Andry36_, Можно еще для класса clas перегрузить оператор cout (operator<<) и создать глобальную переменную и увеличивать ее.
Класс, спасибо!!)
0x10
2442 / 1614 / 235
Регистрация: 24.11.2012
Сообщений: 3,962
18.05.2013, 21:31     Считать с консоль строку, ранее выведенную #14
Большего идиотизма в жизни не писал, пойду руки вымою.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class clas
{ };
 
int object_counter = 0;
#define clas ++object_counter; clas
 
int main()
{
    for(int j=0; j<8; j++)
    {
        clas ob;
    }
 
    std::cout << object_counter << std::endl;
 
    return 0;
};
Добавлено через 4 минуты
А еще можно написать сервер, который будет постоянно висеть в памяти и считать запросы с информацией о новом созданном объекте.

Добавлено через 1 минуту
Как вариант - найти программиста и предложить ему в подарок замечательный барометр, если он скажет сколько раз в данном коде будет создан объект. Нет, постойте... барометром мы измеряли высоту здания.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.05.2013, 21:45     Считать с консоль строку, ранее выведенную
Еще ссылки по теме:

C++ Считать строку с пробелами
Считать строку с файла C++
C++ Не могу считать строку
Считать строку из консоли C++
Считать строку с пробелами C++

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

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12508 / 7070 / 794
Регистрация: 27.09.2012
Сообщений: 17,454
Записей в блоге: 2
Завершенные тесты: 1
18.05.2013, 21:45     Считать с консоль строку, ранее выведенную #15
Сохранение экрана консоли
Yandex
Объявления
18.05.2013, 21:45     Считать с консоль строку, ранее выведенную
Ответ Создать тему
Опции темы

Текущее время: 13:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru