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

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

Войти
Регистрация
Восстановить пароль
 
oleska-feska
0 / 0 / 0
Регистрация: 11.02.2014
Сообщений: 22
#1

Логический оператор ИЛИ - C++

11.02.2014, 22:24. Просмотров 405. Ответов 8
Метки нет (Все метки)

Всем привет,на днях преподаватель задал интересный вопрос: "Почему в С++ для оператора ИЛИ используют "|| ",а не "|" ?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2014, 22:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Логический оператор ИЛИ (C++):

Логический оператор AND - C++
Помогите понят что делает этот код и как. char *cp="Hello World!"; while(cp && *cp) Я не могу понят первая строка указатель...

Логический оператор or - C++
Мне, правда, очень стыдно :) но я не понимаю, как правильно прописать следующее: cin >> n; if (n != (1|5|25)){ cout << "\n bla...

Не выполняется логический оператор && - C++
Добрый день. В данном коде #include <iostream> #include <string> #include <cstdlib> using namespace std; int main(){ ...

Составить логический калькулятор (конъюнкция, дизъюнкция, отрицание) на C или C++ - C++
Помогите, пожалуйста, составить программу, которая реализует логический калькулятор.

Оператор ИЛИ - C++
Программа должна проверять строку на правильность ввода(строка состоит из последовательностей нолей и единиц разделённых пробелами) ...

оператор pow, или почему он не работает?! - C++
Задание: Дано целое число N и набор из N вещественных чисел: А1, А2,...,AN Вывести следующие числа: A1, (A2)^2,...,(A(n-1))^N-1,AN^N ...

8
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
11.02.2014, 22:27 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
потому что "|" - это побитовое ИЛИ
1
ValeryS
Модератор
6679 / 5088 / 475
Регистрация: 14.02.2011
Сообщений: 17,081
11.02.2014, 22:28 #3
Цитата Сообщение от oleska-feska Посмотреть сообщение
на днях преподаватель задал интересный вопрос:
а почему для сравнения используют == а не =
0
ustus_alex
6 / 6 / 1
Регистрация: 22.11.2013
Сообщений: 118
Завершенные тесты: 1
11.02.2014, 22:32 #4
Цитата Сообщение от ValeryS Посмотреть сообщение
а почему для сравнения используют == а не =
потому что = это оператор присваиванивания
== - оператор сравнения
0
ValeryS
Модератор
6679 / 5088 / 475
Регистрация: 14.02.2011
Сообщений: 17,081
11.02.2014, 22:36 #5
ustus_alex,
и как ты думаешь я это не знаю?
сравни
Цитата Сообщение от oleska-feska Посмотреть сообщение
Почему в С++ для оператора ИЛИ используют "|| ",а не "|
Цитата Сообщение от ValeryS Посмотреть сообщение
почему для сравнения используют == а не =
похоже?
так создатели языка решили
хотя кто то мне говорил что сейчас можно писать OR вместо|| и AND вместо &&
сам не пробовал, ничего сказать не могу
0
ustus_alex
6 / 6 / 1
Регистрация: 22.11.2013
Сообщений: 118
Завершенные тесты: 1
11.02.2014, 22:54 #6
Цитата Сообщение от ValeryS Посмотреть сообщение
ustus_alex,
и как ты думаешь я это не знаю?
сравни


похоже?
так создатели языка решили
хотя кто то мне говорил что сейчас можно писать OR вместо|| и AND вместо &&
сам не пробовал, ничего сказать не могу
нет, не похоже... Поспешишь, - Форумчан насмешишь

Ради интереса попробовал сейчас на двух компиляторах с поддержкой с++11
Visual Studio 2012 & Intel C++ Compiler XE 14.0
Ничего из такого по умолчанию не работает...

ну, разве только после:
#define OR ||
0
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
11.02.2014, 22:59 #7
Цитата Сообщение от ustus_alex Посмотреть сообщение
нет, не похоже... Поспешишь, - Форумчан насмешишь
вот уж действительно
0
ValeryS
Модератор
6679 / 5088 / 475
Регистрация: 14.02.2011
Сообщений: 17,081
11.02.2014, 23:13 #8
Цитата Сообщение от ustus_alex Посмотреть сообщение
Поспешишь, - Форумчан насмешишь
сейчас проверил на работающем проекте, посему на имена не смотри студия 2008
C++
1
2
3
#include <ciso646>
.............................
 bool a= hWnd==0 and message!=0;
все робит
правда ошибся не AND а and

Добавлено через 3 минуты
ради интереса содержимое файла
ciso646
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
// ciso646 standard header
#pragma once
#ifndef _CISO646_
#define _CISO646_
#include <yvals.h>
 
#include <iso646.h>
#endif /* _CISO646_ */
 
/*
 * Copyright (c) 1992-2007 by P.J. Plauger.  ALL RIGHTS RESERVED.
 * Consult your license regarding permissions and restrictions.
 V5.03:0009 */
ну и iso646.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#pragma once
#ifndef _ISO646
#define _ISO646
 
#if !defined(__cplusplus) || defined(_MSC_EXTENSIONS)
 #define and    &&
 #define and_eq &=
 #define bitand &
 #define bitor  |
 #define compl  ~
 #define not    !
 #define not_eq !=
 #define or     ||
 #define or_eq  |=
 #define xor    ^
 #define xor_eq ^=
#endif /* !__cplusplus || _MSC_EXTENSIONS */
 
#endif /* _ISO646 */
 
/*
 * Copyright (c) 1992-2007 by P.J. Plauger.  ALL RIGHTS RESERVED.
 * Consult your license regarding permissions and restrictions.
 V5.03:0009 */
те же define

хотя мне это не так сильно и нужно, не привык-с
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
11.02.2014, 23:19 #9
Цитата Сообщение от ustus_alex Посмотреть сообщение
ну, разве только после:
#define OR ||
и
Цитата Сообщение от ValeryS Посмотреть сообщение
#include <ciso646>

Не по теме:

Я сам переходил с Delphi на VC++ и в коде на первых парах приятней было бы видеть это, но сейчас синтаксис в С++ мне кажется на много более изящным (если забыть про массивы, хотя и с ними то только на первых парах не привычно только было). Как вы думаете зачем вот это все сделано?



Добавлено через 1 минуту
Цитата Сообщение от ValeryS Посмотреть сообщение
хотя мне это не так сильно и нужно, не привык
а я так уже отвык
0
11.02.2014, 23:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.02.2014, 23:19
Привет! Вот еще темы с ответами:

Оператор if или где скрыта ошибка - C++
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { int p, q; for(p=0; p&lt;=100;...

new - это операция или все таки оператор? - C++
В большинстве интернет-источниках написано, (взять хоть википедию (да, я понимаю, что там много неправильной информации)). Но...

Что значит оператор ^ (кроме поразрядного исключающего или)? - C++
собсно сабж

Можно ли задать оператор сравнения (< или >) для string - C++
задача - создание шаблонного класса. и в нем используется оператор сравнения в одном из методов, задача предполагает использование инт,...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

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