Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/25: Рейтинг темы: голосов - 25, средняя оценка - 4.76
8 / 8 / 2
Регистрация: 16.03.2011
Сообщений: 257

Создать свой целочисленный тип данных

13.09.2011, 12:52. Показов 5092. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, у меня возник вопрос, можно ли создать например целочисленный тип данных, который может принимать только значения от 1 до 4 и выделять под него 2 бита (00-'1'; 01-'2'; 10-'3'; 11-'4'). Нас пока учили создавать новые типы через структуры на основе стандартных типов.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.09.2011, 12:52
Ответы с готовыми решениями:

Как создать свой целочисленный тип данных с пределом от 0 до 500
Доброе утро. Кто может подсказать, как создать персональный тип данных. Задумка вот в чем. Нужна программа, где по нажатию на...

Создать свой тип данных
Есть класс Bignum, который хранит большие числа: class Bignum { string digits; // Число }; Возможно ли сделать вот...

Не получается создать свой тип данных
Всем привет! Подскажите почему компилятор ругается на эти три строчки? MyVector2D():x(0),y(0){} MyVector2D(float x, float...

5
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
13.09.2011, 12:53
Сделай свою запаковку и распаковку в стандартный unsigned int
1
 Аватар для solar_wind
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
13.09.2011, 12:58
fenix117, Если это одно значение, то выигрыша не будет никакого, дискретность тех же указателей до байта....а вот если это например массив таких значений, тогда можно оптимизировать память и написать класс, который будет с этими данными работать.
1
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
13.09.2011, 15:14
C
1
2
3
4
5
6
struct bt {
    unsigned char a:2;
    unsigned char b:2;
    unsigned char c:2;
    unsigned char d:2;
};
1
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
14.09.2011, 04:19
Jupiter, для битовых полей определёнными являются только int, signed int и unsigned int

C89(draft)
3.5.2.1 Structure and union specifiers

...

A bit-field may have type int , unsigned int , or signed int .
Whether the high-order bit position of a ``plain'' int bit-field is
treated as a sign bit is implementation-defined. A bit-field is
interpreted as an integral type consisting of the specified number of
bits.
Цитата Сообщение от fenix117
который может принимать только значения от 1 до 4 и выделять под него 2 бита
C
1
struct int_type { unsigned int val : 2; };
занимать она будет не два бита, а sizeof(unsigned int)
2
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
14.09.2011, 10:32
C++(2003)
9.6
...
9.6.3 A bit-field shall have integral or enumeration type (3.9.1). It is
implementation-defined whether a plain (neither explicitly signed nor unsigned) char, short, int or
long bit-field is signed or unsigned.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.09.2011, 10:32
Помогаю со студенческими работами здесь

Целочисленный тип данных для 10^50
Существует ли в C++ целочисленный тип данных, который вмещает 10^50?

Как создать свой собственный тип на C++?
Здравствуйте!!! Возник вопрос как создать свой собственный тип на С++ который включат такие типы как int, string, double?

Как реализовать свой тип данных
Здравсвтуйте,подскажите пожалуйста как реализовать с с++ свой тип данных. Допустим хочу завести массив,где каждому arr будет соответсвовать...

Свой тип данных для перегрузки функций
Добрый день! Имеется широта и долгота - все FLOAT. Хочу сделать пару функций с одинаковым названием, но с разной реализацией для разных...

Свой тип данных позволяющий хранить числа разрядностью в <= 30
Доброго времени суток! Возникла потребность иметь программу позволяющую производить арифметические действия с числами, разрядность...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru