Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail


Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Название темы включает слова - "Помогите", "Спасите", "Срочно"
Название темы не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте >>>правила <<< и заново правильно создайте тему.
 
Опции темы
Старый 29.04.2009, 19:43   #1
Dimarik
Форумчанин
 
Аватар для Dimarik
 
Регистрация: 18.04.2009
Сообщений: 688
По умолчанию проблема с cin.get

Код:
#include <iostream.h>
using namespace std;
main()
{
char ch;
int count=0;
cin.get(ch);
while (ch!='#')
{
cin.get(ch);
cout<<ch;
count++;

}
cout<<"\n"<<count<<" characters read\n";
cin.get();
cin.get();
}
программа работает некорректо. Ошибки: не ставятся пробелы (хотя cin.get() отличается от cin акк раз тем, что она считывает проелы.). после введения завершающего символа невозможно просмотреть результат работы программы

Последний раз редактировалось MaTBeu; 29.04.2009 в 20:16.
Dimarik вне форума
Старый 29.04.2009, 19:55   #2
Dimarik
Форумчанин
 
Аватар для Dimarik
 
Регистрация: 18.04.2009
Сообщений: 688
По умолчанию

сам отвечу на свой вопрос. программа работает корректно, просто после написания подобной проги, я не закрыл окно c++ Builder 6/ и в проектах сохранилдся предыдущий проект. возникает вопрос. когда я программировал на языке ТР, я мог писать сколько угодно программ одновременно. паскаль работал многофункционально. с с++ в данный момент у меня с этим проблема. как это избежать?
Dimarik вне форума
Старый 29.04.2009, 20:17   #3
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,623
По умолчанию

Это проблемы не языка, а среды разработки. Попробуйте Dev-cpp или Visual Studio. Там такого нет.
MaTBeu вне форума
Старый 29.04.2009, 20:21   #4
Dimarik
Форумчанин
 
Аватар для Dimarik
 
Регистрация: 18.04.2009
Сообщений: 688
По умолчанию

я сейчас по книжке изучаю с++ и кое что непонятно. очень прошу подсказать мне.
вот код программы:
Код:
#include <iostream.h>
main()
{
int ch;
int count=0;
while ((ch=cin.get()) != EOF) // проверка условия конца файла
{
cout.put(char(ch));
count++;
}
cout<<endl<<count<<" characters read"<<endl;
}
EOF=-1 (константа конца файла), но когда я ввожу с клавиатуры "-1" у меня не завершается цикл. он завршается только сочетанием ctrl+z,но это сочетание навсегда блокирует ввод, а допустим, если после завершения цикла необоходимо будет воспмользоваться новым аналогичным циклом, то применение cin.clear() будет уже невозможно.
и ещё. как понять запись (ch=cin.get()) !-EOF //запись условия цикла ????

Последний раз редактировалось MaTBeu; 30.04.2009 в 21:37.
Dimarik вне форума
Старый 30.04.2009, 14:41   #5
Dimarik
Форумчанин
 
Аватар для Dimarik
 
Регистрация: 18.04.2009
Сообщений: 688
По умолчанию

так в чём тут дело? кто-нить в курсе?
Dimarik вне форума
Старый 30.04.2009, 15:56   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
но когда я ввожу с клавиатуры "-1" у меня не завершается цикл
А по-вашему, "-1" - это один символ? Вообще-то, это '-' и '1'.

Цитата:
и ещё. как понять запись (ch=cin.get()) !-EOF //запись условия цикла ????
Читаете из входного потока символ в ch, потом сравниваете.
Sazary вне форума
Старый 30.04.2009, 17:53   #7
Dimarik
Форумчанин
 
Аватар для Dimarik
 
Регистрация: 18.04.2009
Сообщений: 688
По умолчанию

у меня возник вопрос: КАКУЮ ИЗ СРЕД С++ ВЫ СЧИТАЕТЕ НАИЛУЧШЕЙ?

стоп. прочитать итз входного потока переенную ch это cin.get(ch)
а cin.get() - это что????

Последний раз редактировалось MaTBeu; 30.04.2009 в 21:38.
Dimarik вне форума
Старый 30.04.2009, 17:59   #8
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
а cin.get() - это что????
Как раз читает символ из потока и возвращает его.
Sazary вне форума
Старый 30.04.2009, 23:45   #9
Dimarik
Форумчанин
 
Аватар для Dimarik
 
Регистрация: 18.04.2009
Сообщений: 688
По умолчанию

у меня возник вопрос: КАКУЮ ИЗ СРЕД С++ ВЫ СЧИТАЕТЕ НАИЛУЧШЕЙ?
Dimarik вне форума
Старый 30.04.2009, 23:52   #10
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
у меня возник вопрос: КАКУЮ ИЗ СРЕД С++ ВЫ СЧИТАЕТЕ НАИЛУЧШЕЙ?
К данной теме этот вопрос не относится.
А вообще, это уже обсуждалось.

ps Для разных задач - разные.
Sazary вне форума
Закрытая тема

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
cin??? Paul_AG Общие вопросы C/C++ 4 24.04.2009 14:02
Проблема с функцией cin.getline. Подскажите советом. (*_*) Общие вопросы C/C++ 3 04.03.2009 23:43
Проблема с рамами/Проблема с ЖД DRAGGER Железо 6 05.01.2009 00:37
Класс cin Freer Общие вопросы C/C++ 10 26.12.2008 00:46
Не опознается cin Stellvertreter Общие вопросы C/C++ 5 14.10.2008 08:10