Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.88/120: Рейтинг темы: голосов - 120, средняя оценка - 4.88
3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331

Каков размер типа int на 64-битном и 32-битном Windows?

17.05.2016, 14:21. Показов 23939. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Тип int на 32 битном Windows занимает 32 бита(4 байта) так? А на 64 битном 64 бита(8 байт) да?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.05.2016, 14:21
Ответы с готовыми решениями:

картинка в 16/18 битном режиме
Работаю с РЖБ дисплеем и мне интересно, как можно представить картинку(только не в ручную) в коде 18 или 16 битном режиме (5-6-5)? ну и...

Выполнить в 16-ти битном формате
Проблема по информатике. Никак не могу понять как это делать. Прошу помочь. Спасибо всем большое. - Выполнить в 16-ти битном формате....

Прозрачность в 8-битном изображении
Нужно наложить одну картинку на другую с прозрачностью. В 24-разрядном изображении всё легко. Каждый байт пикселя складываем с байтом из...

23
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
17.05.2016, 14:23
Цитата Сообщение от yura91 Посмотреть сообщение
Тип int на 32 битном Windows занимает 32 бита(4 байта) так? А на 64 битном 64 бита(8 байт) да?
Тут еще от компилятора зависит, но в основном и там и там int занимает 4 байта. У себя можешь проверить так
C++
1
std::cout << sizeof(int);
0
3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331
17.05.2016, 15:11  [ТС]
А сколько маскимум байт может занимать int? И от того сколько он занимает зависит диапазон значений? Чем больше занимает тем больше диапазон значений так?
0
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
17.05.2016, 15:26
Цитата Сообщение от yura91 Посмотреть сообщение
А сколько маскимум байт может занимать int?
Бесконечность.

Цитата Сообщение от yura91 Посмотреть сообщение
И от того сколько он занимает зависит диапазон значений? Чем больше занимает тем больше диапазон значений так?
Так.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
17.05.2016, 15:29
https://www.cyberforum.ru/blogs/18334/blog69.html
0
3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331
17.05.2016, 16:17  [ТС]
то есть int на некоторых машинах может и 8 байт занимать(как double) да?
0
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
17.05.2016, 16:22
Это от компилятора зависит. Может, в каких-то и восемь.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
17.05.2016, 16:58
Цитата Сообщение от yura91 Посмотреть сообщение
то есть int на некоторых машинах может и 8 байт занимать(как double) да?
Это стандарту не противоречит. Но на сегодняшний день если такое и есть, то только на специфических процессорах. Сейчас в языке есть 5 целочисленных типов: char, short, int, long, long long. На них можно повесить 5 различных размеров. Например, 1, 2, 4, 8, 16 (хотя по факту пока имеется только 4 разных размера). Если int будет настроен на 8 байт, то для размеров 1, 2, 4 останется только два типа (char и short), т.е. для какого-то из размеров вообще не будет никакого типа. Т.е. 8-байтный int - это то, что является очень специфичной вещью
0
3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331
17.05.2016, 17:50  [ТС]
Ну а 6 байт там 5 байт может быть int?

Добавлено через 21 секунду
Ну кроме 4 байт сколько еще может быть?
0
Заблокирован
17.05.2016, 17:52
Цитата Сообщение от yura91 Посмотреть сообщение
Тип int на 32 битном Windows занимает 32 бита(4 байта) так? А на 64 битном 64 бита(8 байт) да?
- нет, это размеры указателей. Вот сайзы из первых уст. Все типы зависят от компилятора, ну и не должны противречить стандартным размерам.
Миниатюры
Каков размер типа int на 64-битном и 32-битном Windows?   Каков размер типа int на 64-битном и 32-битном Windows?  
0
17.05.2016, 17:53

Не по теме:

Цитата Сообщение от yura91 Посмотреть сообщение
там 5 байт может быть int?
- некартное число байт быть не может, единственный тип с некратным числом байт это char.

0
3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331
17.05.2016, 18:10  [ТС]
нет, это размеры указателей. Вот сайзы из первых уст. Все типы зависят от компилятора, ну и не должны противречить стандартным размерам.
Но на обоих скриншотах размер int равен 4. Просто интересно какие еще размеры у него могут быть кроме 4?
0
Заблокирован
17.05.2016, 18:13
Цитата Сообщение от yura91 Посмотреть сообщение
Тип int на 32 битном Windows занимает 32 бита(4 байта) так? А на 64 битном 64 бита(8 байт) да?
- твой вопрос был о Windows х86 и х64, ты получил ответ, зачем тебе каких размеров может быть инт?Возьми sizeof и узнай размер. инт может быть в принципе любого размера(тот кто пишет компилятор сам и реализует представление инта)
0
3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331
17.05.2016, 18:26  [ТС]
Просто я к чему вел у меня такая ситуация. Есть double он этим кодом раскладывается на массив байт
Java
1
2
3
4
5
6
7
8
9
public static byte[] doubleToByteArray(double a)
    {
 
        byte[] output = new byte[8];
        long lng = Double.doubleToLongBits(a);
        for(int i = 0; i < 8; i++) output[i] = (byte)((lng >> ((7 - i) * 8)) & 0xff);
 
        return output;
    }
Этот код на Java. Он раскладывает double на 8 байт. А как тогда из этого массива байт потом опять собрать double? Можно пример на С++ желательно при помощи побитовых операций?Просто я на клиенте отправляю double разложенный на 8 байт а на сервере который на Qt нужно восстановить этот double из байт.
0
Заблокирован
17.05.2016, 18:32
yura91, ты делаешь глупость, не надо ни на что раскладывать дабл, он на 32 битке имеет 4 байта на 64 битке - 8, запихни их в буффер(сколько конкретно байт в дабле узнавай через sizeof) и передай в send. Разложение и прочие операции с этими байтами делает протокол передачи.
0
3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331
17.05.2016, 19:43  [ТС]
Ну дело в том что у меня этот double может передаваться не один а еще байты изображения звук и другие данные. Вот я и думаю, разложить его на 8 байт к примеру и знать что у меня первые 8 байт в потоке это double ну к примеру. Для этого чтоб его правильно разложить нужны побитовые операции. Вот я и думаю как его разложить а потом на серваке собрать?
0
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
17.05.2016, 19:58
yura91, какие побитовые операции и зачем? Достаточно преобразовать тип и взять байты.
0
3 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,331
17.05.2016, 20:12  [ТС]
Цитата Сообщение от nmcf Посмотреть сообщение
Достаточно преобразовать тип и взять байты.
А как это правильно сделать? взять эти разложенные байты обратно в double?
0
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
17.05.2016, 20:17
Ну я же не знаю в чём ты их хранишь. Если в массиве char, то после получения просто скопируешь поверх переменной double и всё.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
17.05.2016, 20:21
Цитата Сообщение от yura91 Посмотреть сообщение
Просто я на клиенте отправляю double разложенный на 8 байт а на сервере который на Qt нужно восстановить этот double из байт
Клиент на Qt понятия не имеет о том, какие извращения были применены на сервере, чтобы послать 8 байт информации. Клиент может тупо принять эти 8 байт и записать их в переменную типа double

C
double val;
recv (sock, &val, sizeof (val), flags);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.05.2016, 20:21
Помогаю со студенческими работами здесь

Не работает функция в 64 битном офисе
Добрый день пользовался функцией для конвертации из этой темы: https://www.cyberforum.ru/vba/thread487916.html проблема в том, что в...

Регулярные выражения в 64 битном приложении
Всем привет. Вот задумался перевести свой проект на 64 бита. Так вот, в проекте используется RegExpr которая 32 битная Может есть...

Командная строка в 32-битном режиме
Как в Windows 7 запустить командную строку в 32-битном режиме?

giveio.sys на 64-битном камне
Работаю с портами через giveio. Особенность в том что мне нужны порты с адресами в области 0-255. Для них отдельные команды. Ну типа...

управление в 4 битном режиме HD44780
Люди как каждый наверно в своем время пробую попользовать мониторчик HD44780, сначала попробовал в 8 битном режиме, все заработало, но в 4...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru