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

Побитовое NOT - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти ошибку в коде http://www.cyberforum.ru/cpp-beginners/thread828444.html
Помогите пж. найти ошибку в коде. Проверка на ошибки в мат выражениях. Примеры без ошибок: 4+3+(234+3)+2 3+21 45 Примеры с ошибками: 23+()-2 +2+23 34)
C++ По двум заданным одномерным массивам формируется третий, содержащий в начале элементы первого, а в конце – элементы второго массива. подскажите как на языке C++ По двум заданным одномерным массивам формируется третий, содержащий в начале элементы первого, а в конце – элементы второго массива. http://www.cyberforum.ru/cpp-beginners/thread828443.html
C++ Даны массивы A(5,5), B(5,5), C(5,5). Поменять местами максимальные и минимальные элементы.
на языке С++ Даны массивы A(5,5), B(5,5), C(5,5). Поменять местами максимальные и минимальные элементы. Заранее спс
Подскажите начинающему программисту, в чем отличие структур от классов в C++ C++
Расскажите пожалуйста начинающему программисту, в чем отличие структур от классов в C++
C++ Массив: Преобразовать матрицу, поменяв местами минимальный и максимальный элемент в каждой строке / столбце. http://www.cyberforum.ru/cpp-beginners/thread828436.html
на языке С++ Дана матрица размера 5 x 10. Преобразовать матрицу, поменяв местами минимальный и максимальный элемент в каждой строке1|столбце2.
C++ Создать бинарное дерево, по правой ветке - переменные типа инт, по левой - 2 переменные типа чар Здравствуйте. Необходимо создать бинарное дерево, по правой ветке - переменные типа инт, по левой - 2 переменные типа чар. ругается в последнем моменте. Прошу подправить и объяснить, если возможно, на доступном языке. #include <iostream> #define n 20; using namespace std; int i; подробнее

Показать сообщение отдельно
Вальдемар
-5 / 0 / 0
Регистрация: 29.07.2012
Сообщений: 61

Побитовое NOT - C++

04.04.2013, 22:34. Просмотров 377. Ответов 0
Метки (Все метки)

Вопрос тем кто шарит...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    int i;
    bool b;
    
    cout << "~\n";
    
    i = 3; // 0011;
    b = ~i; // 1100 = 1;
    cout << b << endl;
    
    i = 0; // 0000;
    b = ~i; // 1111 = 1;
    cout << b << endl;
    
    i = 15; // 1111;
    for(int v=8; v; v/=2) (v & i)? cout << "1": cout << "0";
    cout << endl;
    
    i = ~i;
    for(int v=8; v; v/=2) (v & i)? cout << "1": cout << "0";
    cout << endl;
    
    b = i; // 0000 = 0;
    cout << b << endl;
Так вот, почему на выходе 1 а не 0

Добавлено через 27 минут
Разобрался. Побитовое не меняет число на противоположное, тоесть в маем случае на -16.
А число отличное от нульа = true
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru