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

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

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

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

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

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

Как считать строку scanf'ом при этом не переходя на новую строку, т.е. без использования Enter'а - C++
Как считать строку scanf'ом при этом не переходя на новую строку, т.е. без использования Enter'а, необходимо для интерактивного ввода в...

Считать строку из консоли - C++
Здравствуйте. Скажите, пожалуйста, как можно считать текст из консоли, завершающийся EOF? Хотел так, но тут не вводятся пробелы: ...

Считать строку с файла - C++
Может дыбильный вопрос, но все же хочу считать строку с файла, при этом хочу что бы на выходе получилось string textv, а не char textv; ...

Считать строку из файла - C++
int ch; while (ch ==100) { fgets( load_string, ch , file ); cout << load_string << endl; ...

Считать строку с пробелами - C++
Проблема такая пытаюсь передать строку в файле в переменную str, но все что идет после пробела не считывается как этого избежать ? ...

Считать строку с пробелами - C++
Опишите функцию, выводящую на экран HelloWorld. Но напишите её под функцией main, а из функции main вызовите эту написанную вами функцию. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ded_Vasilij
231 / 213 / 15
Регистрация: 01.09.2012
Сообщений: 2,103
18.05.2013, 20:25 #2
Если Вы считываете строку, то можно попробовать atoi(), а вот насчет стандартного потока вывода -не знаю, не сталкивался
0
ninja2
231 / 187 / 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 и можно снова считывать из него.
0
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;
    }
 
    
};
0
ninja2
231 / 187 / 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 раз инициализируешь, мб нужно как то конструктор в классе создать и сатический член класса?
0
Andry36_
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 11
18.05.2013, 20:53  [ТС] #6
Что то типо задачки "ломай голову". Спасибо за ответы.
0
0x10
18.05.2013, 20:55
  #7

Не по теме:

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

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

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

Не по теме:

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

нельзя.
0
0x10
2464 / 1636 / 238
Регистрация: 24.11.2012
Сообщений: 4,029
18.05.2013, 21:04 #9
Какая дурь... Ну глобальную переменную заведите и увеличивайте ее.
0
ninja2
231 / 187 / 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;
};
0
Andry36_
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 11
18.05.2013, 21:14  [ТС] #11
Цитата Сообщение от 0x10 Посмотреть сообщение
Какая дурь... Ну глобальную переменную заведите и увеличивайте ее.
Согласен, не придумывал, но надо.
Я допер, ща попробу сделать) Все спасибо))
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
18.05.2013, 21:14 #12
Andry36_, Можно еще для класса clas перегрузить оператор cout (operator<<) и создать глобальную переменную и увеличивать ее.
0
Andry36_
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 11
18.05.2013, 21:16  [ТС] #13
Цитата Сообщение от ninja2 Посмотреть сообщение
Andry36_, Можно еще для класса clas перегрузить оператор cout (operator<<) и создать глобальную переменную и увеличивать ее.
Класс, спасибо!!)
0
0x10
2464 / 1636 / 238
Регистрация: 24.11.2012
Сообщений: 4,029
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 минуту
Как вариант - найти программиста и предложить ему в подарок замечательный барометр, если он скажет сколько раз в данном коде будет создан объект. Нет, постойте... барометром мы измеряли высоту здания.
1
Croessmah
Эксперт CЭксперт С++
13214 / 7485 / 843
Регистрация: 27.09.2012
Сообщений: 18,401
Записей в блоге: 3
Завершенные тесты: 1
18.05.2013, 21:45 #15
Сохранение экрана консоли
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.05.2013, 21:45
Привет! Вот еще темы с ответами:

Считать строку с консоли - C++
такая задачка, препод хочет чтобы мы не юзали класс string, а юзали массивы символов, причем только динамические (лаба такая просто),...

Как считать строку? - C++
Зачем надо при считывания переменной типа string надо писать getline(cin, ...)? Зачем там cin? Разве там ожет быть что либо иное?

Считать строку с потока - C++
Проблема в заголовке темы. f&gt;&gt;str; //отсутствует функция &quot;&gt;&gt;&quot; getline(f,str); //getline: идентификатор не найден Как тогда мне...

Не могу считать строку - C++
Доброй ночи! есть код: cin &gt;&gt; P; cin &gt;&gt; M; generateX2(b, P, M); print2(b, P, M); revers(b, P,...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
18.05.2013, 21:45
Ответ Создать тему
Опции темы

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