Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 12.10.2009, 20:41   #1
k1r1ch
ACM!
Форумчанин
 
Аватар для k1r1ch
 
Регистрация: 19.06.2009
Сообщений: 382
Вопрос Почему такая разница между Integer и LongInt?

Вот что я сегодня вычитал (тут):
Цитата:
Тип Размер Диапазон
Longint 32 бита -2147483648 — 2147483647
Также существует такой тип, как Integer, который эквивалентен типу LongInt.
Его диапазон от -2147483648 до 21474836478. Занимает 4(!) байта в пямяти.
Как такое может быть? Я не особо знаю устройство памяти, но это же просто странно!
k1r1ch вне форума
Старый 12.10.2009, 20:47   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

опечатка в цифре там
Цитата:
Type Range Format
Integer –2147483648..2147483647 signed 32-bit
Cardinal 0..4294967295 unsigned 32-bit
Fundamental integer types include Shortint, Smallint, Longint, Int64, Byte, Word, and Longword.

Type Range Format
Shortint –128..127 signed 8-bit
Smallint –32768..32767 signed 16-bit
Longint –2147483648..2147483647 signed 32-bit
Int64 –2^63..2^63–1 signed 64-bit
Byte 0..255 unsigned 8-bit
Word 0..65535 unsigned 16-bit
Longword 0..4294967295 unsigned 32-bit
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума
Старый 12.10.2009, 20:53   #3
k1r1ch
ACM!
Форумчанин
 
Аватар для k1r1ch
 
Регистрация: 19.06.2009
Сообщений: 382
Радость

А ну я и думаю)
k1r1ch вне форума
Старый 12.10.2009, 20:56   #4
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Цитата:
Longint –2147483648..2147483647 signed 32-bit
Цитата:
Integer –2147483648..2147483647 signed 32-bit
Тогда в чм разница писать Integer или LongInt?
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума
Старый 12.10.2009, 21:09   #5
AquaKlaster
Delphi,Python,PHP
Форумчанин
 
Аватар для AquaKlaster
 
Регистрация: 04.04.2009
Сообщений: 138
По умолчанию

LongInt это тотже Integer только у него диапазон чисел побольше!
AquaKlaster вне форума
Старый 12.10.2009, 21:15   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от AquaKlaster Посмотреть сообщение
LongInt это тотже Integer только у него диапазон чисел побольше!
ты не прав. я вверху скинул таблицу.
в паскале так было, но не в Делфи.

Цитата:
Тогда в чм разница писать Integer или LongInt?
нет поидее, не знаю почему, кстати...
Цитата:
In general, arithmetic operations on integers return a value of type Integer—which, in its current implementation, is equivalent to the 32-bit Longint.
это типа для перевода с Паскаля...в Паскале разрядность иная была.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Последний раз редактировалось Пепел Феникса; 12.10.2009 в 21:18.
Пепел Феникса вне форума
Старый 12.10.2009, 21:19   #7
AquaKlaster
Delphi,Python,PHP
Форумчанин
 
Аватар для AquaKlaster
 
Регистрация: 04.04.2009
Сообщений: 138
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
ты не прав. я вверху скинул таблицу.
в паскале так было, но не в Делфи.
Извиняюсь, прост помню что в паскале так!
AquaKlaster вне форума
Старый 12.10.2009, 21:28   #8
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Вот, что откопал:
Цитата:
Тебя не смущает, что когда ты в Delphi задаёшь Integer, на самом деле делается LongInt?
Отсюда: http://www.sql.ru/forum/actualthread.aspx?tid=159271

Аааа!!! Вот, что интересно:
Цитата:
integer - это generic тип, т.е. зависит от текущего размера процессорного слова.
longint - "фиксированный" тип, 32 бита.
В текущих компьютерах проц.слово 32-битное, значит integer = longint.
Во вчерашних компах проц.слово было 16-битное => integer 16-битное < longint в 2 раза.
Будущие компы будут 64-битные => integer будет 64-битным > longint в 2 раза.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ

Последний раз редактировалось Alex Cones; 12.10.2009 в 21:31.
Alex Cones вне форума
Старый 12.10.2009, 21:35   #9
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

да это так:
Цитата:
The generic integer types are Integer and Cardinal; use these whenever possible, since they result in the best performance for the underlying CPU and operating system. The table below gives their ranges and storage formats for the current 32-bit Object Pascal compiler.
Type Range Format
Integer –2147483648..2147483647 signed 32-bit
Cardinal 0..4294967295 unsigned 32-bit
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума
Старый 12.10.2009, 21:39   #10
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Цитата:
formats for the current 32-bit
Типа текущей. Значит в 64-ной версии будут другие значения.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разница между временем asd48 Microsoft Office Excel 1 05.06.2009 23:44
Разница между датами kykysya Общие вопросы Delphi 8 26.03.2009 18:22
Какая разница между MS Visual и C++ Fanta_Clour Софт 2 09.03.2008 18:33
Разница между датами deenka БД в Delphi 3 31.01.2008 13:21
почему такая бяка??? Sjava Свободное общение 17 13.11.2006 08:37