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

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

Войти
Регистрация
Восстановить пароль
 
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
#1

В чем разница? - C++

09.09.2013, 14:44. Просмотров 376. Ответов 7
Метки нет (Все метки)

Скажите в чем разница между двумя кусками кода:

C++
1
2
3
4
5
std::string a;
    while ((std::cin>>a)!="Quit")
    {
        std::cout<<a;
    }
C++
1
2
3
4
5
6
7
std::string a;
    std::cin>>a;
    while (a!="Quit")
    {
        std::cout<<a;
        std::cin>>a;
    }
Причем первый вариант не работает как надо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.09.2013, 14:44     В чем разница?
Посмотрите здесь:

В чем разница - C++
Здравствуйте. Я новичок, как здесь, так и в программировании, только учусь. И ищя литературу прочитывал кучу информации, наткнулся на этот...

'0' и 0, в чем разница? - C++
Подскажите пожалуйста, если я напишу число в ' ' или число без кавычек, то что изменится? Код элемента(цифры)? И для чего это нужно? ...

В чем разница - C++
В чем разница между: typedef double(*Function_ptr)(double); и typedef double Function(double); Первое - это указатель на...

В чем разница. - C++
Извиняюсь за тупой вопрос, но в чем разница. оператора ++ к примеру. a=b++ и a=++b ?

В чем разница? - C++
Здравствуйте! Хотел узнать, в чем разница между С++ которым писали в старом добром BorlandC, в студии и VisualC++? Думал тем, что...

в чем разница? - C++
вот такая вот конструкция (условие)?ложь:истина дает такой же результат if(условие){истина}else{ложь} хотелось бы...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
5602 / 2636 / 242
Регистрация: 01.11.2011
Сообщений: 6,495
Завершенные тесты: 1
09.09.2013, 14:59     В чем разница? #2
Предусловие/постусловие?
h_wolf
9 / 9 / 1
Регистрация: 24.01.2013
Сообщений: 212
09.09.2013, 15:01     В чем разница? #3
Peperovich, а как должен работать первый вариант по Вашему?
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
09.09.2013, 15:03  [ТС]     В чем разница? #4
Ну по мойму оба варианта должны работать так:
1. вводится слово в поток
2. читается слово из потока пока не встретиться Quit
3. выводится слово в поток

Второй вариант так работает, а первый на ввод слова Quit не реагирует выходом из программы.
0x0d9
8 / 8 / 2
Регистрация: 04.09.2013
Сообщений: 17
09.09.2013, 15:04     В чем разница? #5
Цитата Сообщение от Peperovich Посмотреть сообщение
std::cin>>a
неявно вызывает operator void * объекта cin.
Т.е. пляшем от того, что cin>>a возвращает указатель.
Петррр
5946 / 3383 / 336
Регистрация: 28.10.2010
Сообщений: 5,927
09.09.2013, 15:10     В чем разница? #6
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Предусловие/постусловие?
Где?
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
09.09.2013, 15:14  [ТС]     В чем разница? #7
Цитата Сообщение от 0x0d9 Посмотреть сообщение
неявно вызывает operator void * объекта cin.
Т.е. пляшем от того, что cin>>a возвращает указатель.
Спасибо, теперь понятно почему не работает.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.09.2013, 15:28     В чем разница?
Еще ссылки по теме:

В чем разница между С и С++ - C++
Возник вопрос в чем жи разница между С и С++ кроме того, что в С++ есть классы а в С их нету ?

Подскажите в чем разница - C++
#include &lt;fstream&gt; #include &lt;cmath&gt; using namespace std; int main() { ifstream x(&quot;INPUT.TXT&quot;); ofstream...

Шаблоны. В чем разница? - C++
В чем разница между этими объявлениями? Вроде и так можно и этак. А как правильней? template &lt;class T&gt; struct list { T value; ...

Объясните в чем разница - C++
Здравствуйте! У меня такой вопрос в чем разница записи switch(n) { case 1: cout &lt;&lt; end; case 2: cout &lt;&lt; endl; ...


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

Или воспользуйтесь поиском по форуму:
SummerRain
326 / 325 / 17
Регистрация: 16.12.2012
Сообщений: 544
09.09.2013, 15:28     В чем разница? #8
в первом случае ты сравниваешь поток cin c "Quit"
во втором случаем ты сравниваешь строку с "Quit"
Yandex
Объявления
09.09.2013, 15:28     В чем разница?
Ответ Создать тему
Опции темы

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