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

Обьясните пожалуйста что делает эта программа - C++

Восстановить пароль Регистрация
 
gorus95
5 / 5 / 1
Регистрация: 22.12.2012
Сообщений: 145
04.02.2013, 12:56     Обьясните пожалуйста что делает эта программа #1
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
using namespace std;
int main (void)
{
    unsigned char a=(int)127;
    a<<=2;
    a&=52;
    a|=3;
    a<<=2;
    cout <<"\n a = "<<(int)a<<"\n";
}
и почему результат 220?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kaimi
 Аватар для Kaimi
36 / 31 / 3
Регистрация: 17.09.2012
Сообщений: 66
04.02.2013, 13:09     Обьясните пожалуйста что делает эта программа #2
0111 1111 (127) << 2 = 1111 1100
1111 1100 & 0011 0100 (52) = 0011 0100
0011 0100 | 0000 0011 = 0011 0111
0011 0111 << 2 = 1101 1100
gorus95
5 / 5 / 1
Регистрация: 22.12.2012
Сообщений: 145
04.02.2013, 13:43  [ТС]     Обьясните пожалуйста что делает эта программа #3
Kaimi, только вот не понимаю что делают операции...
C++
1
2
3
<<= 
&= 
|=
Добавлено через 7 минут
уже разобрался, спасибо
astral
 Аватар для astral
4 / 4 / 0
Регистрация: 02.02.2013
Сообщений: 58
04.02.2013, 17:32     Обьясните пожалуйста что делает эта программа #4
Цитата Сообщение от gorus95 Посмотреть сообщение
Kaimi, только вот не понимаю что делают операции...
C++
1
2
3
<<= 
&= 
|=
Добавлено через 7 минут
уже разобрался, спасибо
не поделитесь результатом?
Kgfq
74 / 37 / 2
Регистрация: 23.09.2012
Сообщений: 408
04.02.2013, 17:57     Обьясните пожалуйста что делает эта программа #5
astral, a += b эквивалентно a = a + (b)
gorus95
5 / 5 / 1
Регистрация: 22.12.2012
Сообщений: 145
05.02.2013, 01:46  [ТС]     Обьясните пожалуйста что делает эта программа #6
Kgfq, не путайте людей. это не то о чем вы говорите.
C++
1
2
3
<<=  //побитовый сдвиг влево с присвоением
&=  //побитово "и" то есть побитовое умножение
|=  //побитовое "или"
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2013, 04:53     Обьясните пожалуйста что делает эта программа
Еще ссылки по теме:

C++ Обьясните пожалуйста, что делает эта программа?
Объясните что делает эта программа (do.while) C++
обьясните пожалуйста что делает этот кусок кода с++ C++

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

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11845 / 6824 / 771
Регистрация: 27.09.2012
Сообщений: 16,919
Записей в блоге: 2
Завершенные тесты: 1
05.02.2013, 04:53     Обьясните пожалуйста что делает эта программа #7
Цитата Сообщение от gorus95 Посмотреть сообщение
Kgfq, не путайте людей. это не то о чем вы говорите.
Именно то.
Код
a знак= b;
//результат такой же как при
a=a знак b;
Yandex
Объявления
05.02.2013, 04:53     Обьясните пожалуйста что делает эта программа
Ответ Создать тему
Опции темы

Текущее время: 05:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru