LINUX.ORG.RU

условие для выхода из цикла

 , ,


0

1

есть такой код:

while(strcmp(set,"end"))
	{
		cout << "> ";
		cin >> set >> opt1 >> opt2;
		/*
		 *
		 * set - is char array
		 * opt1 - is int value
		 * opt2 - is int value
		 *
		 */
	}
как перехватить поток , чтобы напечатал
> end
нажал Enter и вышел . на данный момент для выхода вводится end с ненужными параметрами для выхода
> end 0 0
не очень-то и Ъ получается . что подскажете ? как быть ?


Ответ на: комментарий от conf

к Страуструпу . он автор этих самых закорючек .

вообще-то не он. Это тебе читать про http://en.wikipedia.org/wiki/Standard_Template_Library надо, ибо в самом C++ operator>>() не перезагружен и имеет смысл только для встроенных типов как сдвиг вправо.

emulek
()
Ответ на: комментарий от Deleted

С каких пор a == b && a?

с тех пор, как a равно b и a != false.

Я и не говорил нигде, что free(3) == ::delete[], я говорил, что в delete входит и free(3), и в данном конкретном случае — больше ничего.

emulek
()
Ответ на: комментарий от conf

apt-get moo

$ apt-get moo
bash: apt-get: команда не найдена
$ cat /etc/os-release 
NAME=Slackware
VERSION="14.1"
ID=slackware
VERSION_ID=14.1
PRETTY_NAME="Slackware 14.1"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:slackware:slackware_linux:14.1"
HOME_URL="http://slackware.com/"
SUPPORT_URL="http://www.linuxquestions.org/questions/slackware-14/"
BUG_REPORT_URL="http://www.linuxquestions.org/questions/slackware-14/"

ЧЯДНТ?

напиши список умных вещей . мне будет приятно его почитать .

для начала выучи орфографию родного языка. В частности пунктуацию. Так точки ставят только мудаки (если они русские). Потом уже всё остальное.

emulek
()
Ответ на: комментарий от emulek

ЧЯДНТ?

хороший вопрос . у себя спрашивать не пробовал ? говорят , что помогает .

Так точки ставят только мудаки (если они русские)

почитал твои посты ... ты русский ?

conf
() автор топика
Ответ на: комментарий от conf

хороший вопрос . у себя спрашивать не пробовал ? говорят , что помогает .

да мне и так неплохо.

почитал твои посты ... ты русский ?

я — русский. А ты какой национальности? Просто очень интересно, в каком языке такая интересная пунктуация? Я такую только у русских мудаков видел.

emulek
()
Ответ на: комментарий от emulek

я — русский

заметно . особенно на фоне татаро-монголов .

Я такую только у русских мудаков видел

не общался до сего дня с такими .

А ты какой национальности?

нигер .

conf
() автор топика
Ответ на: комментарий от conf

заметно . особенно на фоне татаро-монголов .

до моих предков татары не дошли. Ниасилили немного.

не общался до сего дня с такими .

у тебя ещё всё впереди.

А ты какой национальности?

нигер .

хм... А язык у вас какой? И ссылку пожалуйста на спеки. (типа нигерийского Розенталя чё-нить).

emulek
()
Ответ на: комментарий от emulek

до моих предков татары не дошли. Ниасилили немного

кури историю

у тебя ещё всё впереди

уже успел познакомиться с одним из представителей

А язык у вас какой? И ссылку пожалуйста на спеки. (типа нигерийского Розенталя чё-нить).

http://lmgtfy.com/?q=how to search on google.com

conf
() автор топика
Ответ на: комментарий от conf

кури историю

ты бы сначала покурил.

уже успел познакомиться с одним из представителей

что, мама зеркало показала?

http://lmgtfy.com/?q=how to search on google.com

а вот родному языку тебя твоя негирийская мама не обучила? Или у тебя только папа нигер, а он сейчас далеко?

emulek
()
Ответ на: комментарий от conf

дык это ты сливаешься. У тебя даже национальности нет...

emulek
()
Ответ на: комментарий от shamaz

я надеюсь, что он не мудак, а просто нерусский, и в его правилах пунктуации так принято. Т.е. C++ он не знает потому что phpнеизвестный_мне_язык-программист, а русский язык не знает — потому что нерусский.

Вот интересно, в каком языке так принято...

emulek
()
Ответ на: комментарий от conf

куда же ты , клоун , сливаешься ? напиши еще какую-нибудь смешную глупость .

Почитал ветку. Вы же упороты по самое дно.

andreyu ★★★★★
()
Ответ на: комментарий от emulek

ну я тоже. Вот и интересно стало. В русском и английском так только мудаки пишут...

Всех бомбит по-своему - один с двух строн ставит пробелы, другой вообше их не ставит.

andreyu ★★★★★
()
Ответ на: комментарий от andreyu

Почитал ветку

молодец . возьми пирожок с полки .

Вы же упороты по самое дно

отнюдь . каков запрос - таков ответ . хороших людей не трогаю .

conf
() автор топика
Ответ на: комментарий от conf

молодец . возьми пирожок с полки .

там два. Возьми средний.

emulek
()
Ответ на: комментарий от emulek

там два. Возьми средний.
дык я и не червонец...

*facepalm* обосрали ? обтекай молча (с) народное .

conf
() автор топика
Ответ на: комментарий от conf

*facepalm* обосрали ?

обтекай молча (с) народное .

Мнение твоё, код твой, тема тоже твоя. А обосрали почему-то меня? Что же я сделал такого?

emulek
()
Ответ на: комментарий от emulek

будь мужиком - собери свою женскую волю в кулак и уйди из темы . ты , оказывается , настолько убог , что мне больше не хочется тебя обижать .

conf
() автор топика

пора освоить flex/lex

anonymous
()
Ответ на: комментарий от conf

дык ты меня нисколько не обидел, т.ч. не переживай за меня. Продолжай дальше, мне весело, а тебе?

emulek
()
Ответ на: комментарий от anonymous

Да чем угодно. Хоть в for'е делай break на пробеле, мне пофиг. Но там новомодные string и boost и всё такое, я хз чем ТС пользуется.

coderage
()
Ответ на: комментарий от conf

А ничего, что оно и в исходном твоем варианте пробелы и переводы строк имели одинаковый смысл? Так откуда теперь взялось требование, чтобы opt1 и opt2 считывались из той же строки, что и set?

anonymous
()
Ответ на: комментарий от anonymous

Я это в самом начале аккуратно спросил, но этому полудурку больше пофлудить охота, чем наши идиотские предположения проверять.

arturpub ★★
()
Ответ на: комментарий от conf
$ g++ x.cpp
$ ./a.out 
> set 1 2
= set 1 2
> set
1
2
= set 1 2
> set 1
2
= set 1 2
> 



set

1

2
= set 1 2
> end
END
#include <iostream>
#include <cstring>

using namespace std;

int
main(int argc, char *argv[])
{
    char set[32];
    int opt1, opt2;

    while (1) {
        cout << "> ";
        cin >> set;
        if (strcmp(set, "end") == 0)
            break;
        cin >> opt1 >> opt2;
        cout << "= " << set << " " << opt1 << " " << opt2 << endl;
    }
    cout << "END" << endl;
    return 0;
}
arturpub ★★
()
Ответ на: комментарий от conf

А ты тот еще демагог.

Ладно, попробую сформулировать так, чтобы тяжелее было с темы съехать.

Когда твой код одинаково обрабатывает переводы строк и пробелы — это для тебя нормально, а когда чужой код ты чужой код отметаешь как непригодный за то, что от делает точно так же?

anonymous
()
Ответ на: комментарий от conf

Написал он книги про разные языки. Если посмотреть на amazon-е, то там найдется про разные языки: C, C++, Java, C#, Pascal, Prolog, Modula-2.

Судя по всему, наибольшей критике подвергаются две его книги:

На другие его книги я рецензий не нашел. И не особо искал.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.