|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
11.02.2014, 17:51 | #21 |
Форумчанин
Регистрация: 03.03.2013
Сообщений: 102
|
Итак, что же такое bool.
Из нашей дискуссии следует, что bool - тип данных, принимающий на вход любое число и дающий на выход false (если это число - 0), или true (в остальных случаях). Переменная bool занимает столько памяти, сколько требуется для числа, подаваемого на вход (это немного странно). Тогда вопрос: зачем на вход переменной bool задавать какое-то число? Обычно ей присваивают значение true или false. Удобнее считать число в какую-нибудь числовую переменную, затем сравнить её с нулём,после присвоить переменной типа bool значение true или false. Ещё раз привожу фрагмент waleri: Код:
Как Вам это, уважаемые программисты? Конечно же, я не прав. Я забыл, что выполняется !false = true и !true = false. Тогда я склоняюсь к тому, что bool принимает не любое число, а только два - 0 и (1 или -1). В С++ - 0 и 1. Следовательно весит bool 1 байт. Последний раз редактировалось Stilet; 11.02.2014 в 18:32. |
11.02.2014, 18:34 | #22 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
11.02.2014, 19:11 | #23 |
Eclipse Foundation
Старожил
Регистрация: 19.09.2007
Сообщений: 2,604
|
Оператор >> перегружен для многих стандартных типов (bool в том числе). При любом вводе из объекта потокового ввода cin, выполняется приведение типов. Работает в точности, как говорит Stilet. Проверить можно здесь. Bool занимает 1 байт (может зависеть от компилятора)
В случае неправильного ввода, объект потокового ввода помещает флаг ошибки, поэтому в случае ТС можно сделать следующее Код:
|
11.02.2014, 19:27 | #24 |
Форумчанин
Регистрация: 03.03.2013
Сообщений: 102
|
Хорошо. Я всё понял. Всем большое спасибо.
|
11.02.2014, 21:14 | #25 |
Пользователь
Регистрация: 25.12.2013
Сообщений: 91
|
Всем спасибо за ответы!
Последний раз редактировалось marenko.lilia; 11.02.2014 в 21:16. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите разобраться с кодом! | sid | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 5 | 13.04.2010 17:53 |
помогите разобраться с кодом | samosval | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 27.12.2007 00:20 |
Помогите разобраться с кодом С++ | Noor | Помощь студентам | 20 | 10.10.2007 17:42 |