1 / 1 / 0
Регистрация: 21.04.2010
Сообщений: 38
|
|
1 | |
Тип bool, для чего нужен, как работает?26.04.2010, 02:58. Просмотров 93922. Ответов 30
Метки нет Все метки)
(
Может кто-нибудь поможет на простейшем но понятном примере объяснить как работает тип bool. Знаю что это тип может быть ложный или истинный но что-то никак его работу не могу понять.... для чего он нужен...
0
|
|
26.04.2010, 02:58 | |
Как работает и для чего нужен maven offline mode? Для чего нужен тип void?
Что за тип файла xlm - и для чего он нужен |
|
![]() ![]() 8362 / 3583 / 419
Регистрация: 03.07.2009
Сообщений: 10,708
|
||||||
26.04.2010, 03:03 | 2 | |||||
4
|
5 / 5 / 1
Регистрация: 19.04.2010
Сообщений: 18
|
|||||||||||
26.04.2010, 03:05 | 3 | ||||||||||
Пусть my_variable имеет тип bool
2
|
1 / 1 / 0
Регистрация: 21.04.2010
Сообщений: 38
|
||||||
26.04.2010, 03:22 [ТС] | 4 | |||||
Т.е. по умолчанию он получается является как true?
0
|
1998 / 1598 / 488
Регистрация: 31.05.2009
Сообщений: 2,990
|
||||||
26.04.2010, 03:22 | 5 | |||||
1
|
![]() ![]() 8362 / 3583 / 419
Регистрация: 03.07.2009
Сообщений: 10,708
|
||||||
26.04.2010, 03:27 | 6 | |||||
alfer, у него нету значения по умолчанию. Любое значение отличное от 0 - true, равное 0 - false.
Просто при проверке сравнение с true можно опускать, так же как и сравнение с false, но тогда для false надо писать с отрицанием
1
|
1 / 1 / 0
Регистрация: 21.04.2010
Сообщений: 38
|
|
26.04.2010, 03:32 [ТС] | 7 |
А кажись понял, т.е. если ставим просто (flag) то это истина, если (!flag) то ложное. Ну т.е. как и везде отрицаем знаком !
0
|
![]() ![]() 8362 / 3583 / 419
Регистрация: 03.07.2009
Сообщений: 10,708
|
||||||||||||||||
26.04.2010, 03:37 | 8 | |||||||||||||||
Запись
Да, это логическое отрицание
4
|
1 / 1 / 0
Регистрация: 21.04.2010
Сообщений: 38
|
|
26.04.2010, 03:39 [ТС] | 9 |
M128K145, вот за последнее разъяснение огромное спасибо!
0
|
4849 / 3270 / 466
Регистрация: 10.12.2008
Сообщений: 10,569
|
||||||
26.04.2010, 05:37 | 10 | |||||
0
|
0 / 0 / 0
Регистрация: 04.12.2015
Сообщений: 27
|
|
20.10.2017, 00:55 | 11 |
я всё ровно не понял для чего он нужен, понятно принцип роботы но можно же просто if else использовать то есть
if(x>0) //то пускай будет истинна esle if(x<0) //пускай будет не истина x, я и через int могу вызвать bool зачем то нужен?
0
|
зомбяк
1420 / 1084 / 310
Регистрация: 14.05.2017
Сообщений: 3,552
|
|
20.10.2017, 01:46 | 12 |
можешь вместо int для этого char использовать, для экономии оперативной памяти
![]() Сделан в C++ просто для удобства, чтобы не приходилось думать, что в параметре хранится только да/нет, или же там 256 значений может быть. В Cи например такого типа данных среди стандартных нет (хотя с Си 99 его можно добавлять).
0
|
2719 / 1669 / 347
Регистрация: 09.09.2017
Сообщений: 6,930
|
|
20.10.2017, 09:25 | 14 |
if() это оператор а не функция, он принимает любые числовые значения и проверяет на 0 без неявных преобразований.
Например для if(x == true), поскольку для других типов true это и 1, и 101, и любые другие ненулевые значения.
0
|
2719 / 1669 / 347
Регистрация: 09.09.2017
Сообщений: 6,930
|
|
20.10.2017, 10:46 | 16 |
вроде тут написано "значение воспринимается в контексте логических", то есть поведение будет аналогичным булевским. Самого преобразования (как, например, в double+int ) может не быть.
0
|
Croessmah
|
20.10.2017, 16:30
#17
|
Не по теме: Atakai, чтобы тонна кода не поломалась?
0
|
COKPOWEHEU
|
20.10.2017, 17:11
#18
|
Не по теме: Можно было бы это делать в новом коде... если бы там было неявное преобразование. Как в Си рекомендуют писать
0
|
![]() 8274 / 3850 / 837
Регистрация: 15.11.2014
Сообщений: 8,726
|
|||||||||||
20.10.2017, 21:57 | 19 | ||||||||||
нет. не может.
если выражение не приводимо к булю - будет ошибка компиляции.
0
|
2719 / 1669 / 347
Регистрация: 09.09.2017
Сообщений: 6,930
|
|
21.10.2017, 00:04 | 20 |
где оно в ассемблерном коде? Неявные преобразования там вполне видны.
операторы if, while и прочие просто принимают любой численный тип (включая, например, char и void*).
0
|
21.10.2017, 00:04 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. как правильно понять тип bool ? bool true(const string &str) и что дает это значение ?
Для чего нужен Seed() и для чего его override? Для чего нужен С/С++ и как ним пользоваться? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |