|
0 / 0 / 0
Регистрация: 24.05.2009
Сообщений: 17
|
|
short vs int10.03.2010, 05:34. Показов 5646. Ответов 9
Метки нет (Все метки)
0
|
|
| 10.03.2010, 05:34 | |
|
Ответы с готовыми решениями:
9
Разница int, short, unsigned int, unsigned short short int и short Размер указателя short int |
|
4340 / 1509 / 101
Регистрация: 12.04.2009
Сообщений: 2,342
|
|
| 10.03.2010, 05:48 | |
|
short - 2 байта
int - 4 Соответственно, диапазон значения разный
0
|
|
|
3 / 3 / 0
Регистрация: 01.08.2009
Сообщений: 16
|
|
| 10.03.2010, 06:34 | |
|
В С++ базовый тип данных short - 16 бит. Размер int зависит от платформы. На 32 битных процессорах это 32 бит, а на 64-битных может быть и 64, хотя не всегда.
0
|
|
|
0 / 0 / 0
Регистрация: 24.05.2009
Сообщений: 17
|
|
| 10.03.2010, 06:36 [ТС] | |
|
Наверное, у меня книга неправильная
, посоветуйте какую-нибудь нормальную, желательно чтобы там без лишних разжевываний все было.
0
|
|
|
328 / 312 / 68
Регистрация: 05.11.2009
Сообщений: 712
|
|
| 10.03.2010, 10:05 | |
|
книга у вас правильная, вот только посмотрите на год издания её и под какую ОС они пишут, и какой компилятор используют.
PS было время (DOS, Win95, Win98) и там int был 16-битовым...
1
|
|
|
1180 / 990 / 83
Регистрация: 29.10.2009
Сообщений: 1,385
|
|
| 10.03.2010, 11:10 | |
|
kuroiryuu, от ОСи это не очень зависит, а скорее от компилятора.
Я работал под ДОСом на BC 2.0 - там sizeof(int) = 2 Под W98 пришлось переходить на BC++ 5.02 - а там sizeof(int) = 4 При этом на BC 2.0 я продолжаю работать (W98) - int там остался = 2 Под XP картина аналогичная Пришлось изрядно повозиться при переводе программ с BC 2.0 на 5.02 - я по недалекости своей наплевал на рекомендации по мобильности и использовал не sizeof а прямо 2 байта
0
|
|
|
328 / 312 / 68
Регистрация: 05.11.2009
Сообщений: 712
|
|
| 10.03.2010, 11:17 | |
|
компилятор борланда сам по себе опасен...
ибо BC унаследовал много функций от pascal, что меня в своё время немного смутило (вроде пишу на C, а некоторые функции pascal'я)
0
|
|
|
|
|
| 10.03.2010, 11:27 | |
|
В стандарте по поводу размеров типов сказано следущее:
1. Специфечируется размер только для типа char: sizeof(char) = 1 байту 2. Размер всех остальных типов не оговариваются, однако оговаривается соотношение между =х размерами: sizeof(char) <= sizeof(short) <= sizeof(int) <= sizeof(long) 3. В более поздних стандартах появился тип long long: sizeof(long) <= sizeof(long long) Исторически сложилось, что на "обычных" архитектурах размеры типов следующие: 16-битные платформы: char = 1, short = 2, int = 2, long = 4 32-битные платформы: char = 1, short = 2, int = 4, long = 4, long long = 8 64-битные платформы: char = 1, short = 2, int = 4, long = 8, long long = 8 Под "обычными" архитектурами понимаю архитектуры с униварсельными процессорами, а не всякие типа сигнальных и прочих специализированных процессоров Ivaneo, kuroiryuu, размер типов в стандарте определяется именно в БАЙТАХ. При этом в стандарте не оговаривается, сколько бит в байте. Но на тех же "обычных" архитектурах байт содержит 8 бит. Но на сигнальных процессорах бывают 16-битные, 24-битные и 32-битные байты. Слышал даже про 17-битные и 23-битные байты. Для справки. Бит - единица измерения КОЛИЧЕСТВА информации. Байт - единица АДРЕСАЦИИ памяти. Таким образом байт по своей сути является минимально адресуемым участком памяти. Исходя из этого когда провайдеры указывают скорость в мегаБИТАх в секунду или скорость оцифровки (или как правильно называется термин) файла mp3 выражена в килоБИТАХ в секунду, то формально есть есть правильные величины. Размер памяти в машине или размер диска исчисляется в ячейках памяти (но не в количестве бит), потому как в указании этих характеристик неявно присутсвует понятие размера ячейки памяти. Поэтому модули памяти и жётские диски оцениваются в магаБАЙТах (а не мегаБИТах). При этом исторически сложилось, что "бытовое" понятие байта состоит из 8 бит, а потому чтобы не путаться, все остальные байты (т.е. байты прочих размеров) обычно называют словами unit
2
|
|
|
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
| 10.03.2010, 12:45 | |
|
Хе.
А еще бывают мебибайты и мебибиты: http://ru.wikipedia.org/wiki/Двоичные_приставки Добавлено через 3 минуты Жесткие диски оцениваются производителями в гигабайтах (10^9) и на самих дисках размер указан именно в гигабайтах. Тогда как ОС и утилиты оценивают размер жестких дисков в гибибайтах (2^30 == 1 073 741 824) Хотя и там и там обычно пишется просто: 100Gb Добавлено через 1 минуту Что касается темы, то сейчас нет никакого смысла применять тип short int. Только в очень специфических случаях.
0
|
|
|
0 / 0 / 0
Регистрация: 24.05.2009
Сообщений: 17
|
|||
| 10.03.2010, 13:09 [ТС] | |||
|
0
|
|||
| 10.03.2010, 13:09 | |
|
Помогаю со студенческими работами здесь
10
Преобразование 2-х char в один short int Почему макс short int равен 65535?
Двоичный дамп short и char выводится как int записать по-битого один short int в два char Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Камера 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. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|