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

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

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

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

09.09.2013, 14:44. Просмотров 380. Ответов 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;
    }
Причем первый вариант не работает как надо.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.09.2013, 14:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос В чем разница? (C++):

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

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

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

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

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

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

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

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

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

Подскажите в чем разница - 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++
Возник вопрос в чем жи разница между С и С++ кроме того, что в С++ есть классы а в С их нету ?


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

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

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