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

Как сделать тип enum в структуре беззнаковым - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Интегрирование методом левых прямоугольников http://www.cyberforum.ru/cpp-beginners/thread1772777.html
Задание: "В прикладной программе проводится функция f(x)=cos(x), пределы интегрирования А и В. Решение провести методом левых прямоугольников. Сделал код Но почему то ничего не рассчитывает #include <iostream> #include <math.h> using namespace std; int main()
C++ Не подключается namespace в заголовочном файле Всем доброго дня. Ситуация такая: common.h #pragma once namespace CommonSystem { class Device { http://www.cyberforum.ru/cpp-beginners/thread1772762.html
Перевод из десятичной системы счисления в другие C++
Написал небольшую програмку для перевода из одной системы счисления в другую. Подскажите, как осуществить перевод из десятичной в шестнадцатеричную систему? Вот сам код: #include <iostream> #include <vector> #include <algorithm> void PrintNumber(int N) { std::cout << N; }
C++ Конвертация функции VB на С++
Function sXOR(sText, sKey) On Error Resume Next Dim i, s, k For i = 1 To Len(sText) s = Mid(sText, i, 1): k = Asc(s): k = k Xor Len(sKey): k = Chr(k): sXOR = sXOR & k Next End Functionпомогите пожалуйста конвертировать данную функцию
C++ Осуществить циклический сдвиг компонент вектора http://www.cyberforum.ru/cpp-beginners/thread1772737.html
Дан вектор x = {x0, . xn-1}, m и k  заданные целые числа. Осуществить циклический сдвиг компонент этого вектора Одномерный массив. С++ а) влево на m позиций, т. е. получить вектор {xm+1, xm+2, . xn-1, x0, . xm} б) вправо на k позиций, т. е. получить вектор{xn-k+1, xn-k+2, . xn-1, x0, . xn-k}.
C++ Рекурсивно поменять элементы массива Дан вещественный массив x1, . xn. Поменять местами элементы массива, pавноот- стоящие от начала и конца (x0 и xn−1, x1 и xn−2 и т. д.). Использовать pекуpсивную пpоцедуpу change(i, j), пpоизводящую пеpестановку в части массива, начинающейся i-м и кончающейся j-м элементами подробнее

Показать сообщение отдельно
rk8673
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 4

Как сделать тип enum в структуре беззнаковым - C++

29.06.2016, 10:28. Просмотров 170. Ответов 4
Метки (Все метки)

Почему элемент Type структуры BracketBlock signed и как его сделать unsigned, не увеличивая количество бит Type?
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
enum BracketType
{
    NONE    = 0,
    OPEN    = 1,
    CLOSE   = 2
};
 
struct BracketBlock
{
    unsigned char   Number:6;
    BracketType     Type:2;     // сейчас -2, -1, 0, 1  ; нужно 0, 1, 2, 3  
};
 
int main()
{
    BracketType bt;
    bt = CLOSE;
    cout << bt << endl;
 
    BracketBlock a, b;
    a.Type = OPEN;
    b.Type = CLOSE;
    cout << OPEN << "\t" << a.Type << endl << CLOSE << "\t" << b.Type << endl;
}
В консоли:
2
1 1
2 -2
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru