Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++
Войти
Регистрация
Восстановить пароль
 
Байт
Эксперт C
17770 / 11795 / 2450
Регистрация: 24.12.2010
Сообщений: 23,716
#1

long > short ? - C++

11.12.2011, 00:24. Просмотров 828. Ответов 3
Метки нет (Все метки)

Правда ли что long строго больше чем short ? Или существуют платформы и/или реализации, где long = short?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2011, 00:24
Я подобрал для вас темы с готовыми решениями и ответами на вопрос long > short ? (C++):

В чем разница между long int и short int
Извините если вопрос нубский, но я ни как не могу понять смысл long int и short...

Необходимо разобраться с кодом: указатели на Long
Имеем программный код, который реализует блочный алгоритм шифрования - Tiny...

unsigned long long и Builder 2010
В общем, такая проблема: написал программу на Builder 2006 (реализация...

Ошибка: 'long *' to 'long'
Всем првивет! Вот код: POINT cursor; int x = 0, y = 0;...

Unsigned short
*"в массиве Unsigned short mas инвертировать биты того элемента, который...

Указатель + short
unsigned short b=0xffff; char *a=malloc(65536); for(int i=0;i<65536;i+=2) {...

3
alex_x_x
бжни
2454 / 1660 / 134
Регистрация: 14.05.2009
Сообщений: 7,162
11.12.2011, 00:45 #2
3.9.1 Fundamental types
There are four signed integer types: “signed char”, “short int”, “int”, and “long int.” In this
list, each type provides at least as much storage as those preceding it in the list. Plain ints have the
natural size suggested by the architecture
те каждый следующий в списке должен быть не меньше по размеру
из этого же полагается, что long по размеру может быть равен short, а может и char
1
Байт
Эксперт C
17770 / 11795 / 2450
Регистрация: 24.12.2010
Сообщений: 23,716
11.12.2011, 11:44  [ТС] #3
Цитата Сообщение от alex_x_x Посмотреть сообщение
3.9.1 Fundamental types

те каждый следующий в списке должен быть не меньше по размеру
из этого же полагается, что long по размеру может быть равен short, а может и char
Понятно...
Т.е. стандарт строгого неравенства не гарантирует.
Тогда поставим вопрос по-другому.
Встречались ли вам реализации, где long = short ?
Это, увы, не праздное любопытство. Связан этот вопрос с попыткой сделать достаточно общий пакет длинной арифметики. Идея в том, что используется 2^16 система счисления (short), но при действиях над разрядами они переводятся в long, что позволяет поймать переполнение (то, что "в уме"). Но этот подход работает только в том случае, когда long > short не менее, чем в 2 раза.
0
Evg
Эксперт CАвтор FAQ
18938 / 6899 / 513
Регистрация: 30.03.2009
Сообщений: 19,437
Записей в блоге: 30
11.12.2011, 13:27 #4
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от Байт Посмотреть сообщение
Встречались ли вам реализации, где long = short ?
Такое бывает, как правило, на сигнальных процессорах, где память адресуется с точностью до фрагмента размером 32 бита (т.е. 1 байт = 32 бита). Не думаю, что тебе это интересно. А на всех универсальных процессорах можно закладываться на то, что long шире short'а
3
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.12.2011, 13:27
Привет! Вот еще темы с решениями:

map <wchar_t, short>
Приветствую! Подскажите пожалуйста, как сохранить в файл такое чудо map...

Считывание с бинарный файла + unsigned short --> string
Есть бинарный файл, знаю его структуру, пошурстив справочники и интернет,...

Long To String
Как в C++ Builder преобразовать переменную типа long в string?

Long to short
привет всем, продолжаю подготовку к оса. В следующем вопросе среди прочих...


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

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

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